aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/antlr3_cpp_runtime
diff options
context:
space:
mode:
authormonster <monster@ydb.tech>2022-07-07 14:41:37 +0300
committermonster <monster@ydb.tech>2022-07-07 14:41:37 +0300
commit06e5c21a835c0e923506c4ff27929f34e00761c2 (patch)
tree75efcbc6854ef9bd476eb8bf00cc5c900da436a2 /contrib/libs/antlr3_cpp_runtime
parent03f024c4412e3aa613bb543cf1660176320ba8f4 (diff)
downloadydb-06e5c21a835c0e923506c4ff27929f34e00761c2.tar.gz
fix ya.make
Diffstat (limited to 'contrib/libs/antlr3_cpp_runtime')
-rw-r--r--contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.copyrights.report77
-rw-r--r--contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.licenses.report138
-rw-r--r--contrib/libs/antlr3_cpp_runtime/.yandex_meta/licenses.list.txt58
-rw-r--r--contrib/libs/antlr3_cpp_runtime/include/antlr3.inl9
-rw-r--r--contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.hpp299
-rw-r--r--contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.inl363
6 files changed, 0 insertions, 944 deletions
diff --git a/contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.copyrights.report b/contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.copyrights.report
deleted file mode 100644
index f83a49ca54..0000000000
--- a/contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.copyrights.report
+++ /dev/null
@@ -1,77 +0,0 @@
-# File format ($ symbol means the beginning of a line):
-#
-# $ # this message
-# $ # =======================
-# $ # comments (all commentaries should starts with some number of spaces and # symbol)
-# ${action} {license id} {license text hash}
-# $BELONGS ./ya/make/file/relative/path/1/ya.make ./ya/make/2/ya.make
-# ${all_file_action} filename
-# $ # user commentaries (many lines)
-# $ generated description - files with this license, license text... (some number of lines that starts with some number of spaces, do not modify)
-# ${action} {license spdx} {license text hash}
-# $BELONGS ./ya/make/file/relative/path/3/ya.make
-# ${all_file_action} filename
-# $ # user commentaries
-# $ generated description
-# $ ...
-#
-# You can modify action, all_file_action and add commentaries
-# Available actions:
-# keep - keep license in contrib and use in credits
-# skip - skip license
-# remove - remove all files with this license
-# rename - save license text/links into licenses texts file, but not store SPDX into LINCENSE macro. You should store correct license id into devtools.license.spdx.txt file
-#
-# {all file action} records will be generated when license text contains filename that exists on filesystem (in contrib directory)
-# We suppose that that files can contain some license info
-# Available all file actions:
-# FILE_IGNORE - ignore file (do nothing)
-# FILE_INCLUDE - include all file data into licenses text file
-# =======================
-
-KEEP COPYRIGHT_SERVICE_LABEL 487f5db7281296f7145a1268d0f46773
-BELONGS ya.make
- License text:
- // Copyright (c) 2005-2009 Gokulakannan Somasundaram, ElectronDB
- Scancode info:
- Original SPDX id: COPYRIGHT_SERVICE_LABEL
- Score : 100.00
- Match type : COPYRIGHT
- Files with this license:
- include/antlr3.hpp [5:5]
- include/antlr3baserecognizer.hpp [11:11]
- include/antlr3bitset.hpp [12:12]
- include/antlr3collections.hpp [5:5]
- include/antlr3commontoken.hpp [15:15]
- include/antlr3commontree.hpp [9:9]
- include/antlr3commontreeadaptor.hpp [9:9]
- include/antlr3commontreenodestream.hpp [9:9]
- include/antlr3cyclicdfa.hpp [10:10]
- include/antlr3debugeventlistener.hpp [19:19]
- include/antlr3defs.hpp [8:8]
- include/antlr3errors.hpp [5:5]
- include/antlr3exception.hpp [19:19]
- include/antlr3filestream.hpp [5:5]
- include/antlr3input.hpp [12:12]
- include/antlr3interfaces.hpp [11:11]
- include/antlr3intstream.hpp [35:35]
- include/antlr3lexer.hpp [34:34]
- include/antlr3memory.hpp [5:5]
- include/antlr3parser.hpp [10:10]
- include/antlr3recognizersharedstate.hpp [18:18]
- include/antlr3rewriterulesubtreestream.hpp [5:5]
- include/antlr3rewriteruletokenstream.hpp [5:5]
- include/antlr3rewritestreams.hpp [5:5]
- include/antlr3tokenstream.hpp [10:10]
- include/antlr3treeparser.hpp [5:5]
-
-KEEP COPYRIGHT_SERVICE_LABEL 945f656078309035caf01d2420f95535
-BELONGS ya.make
- License text:
- * Copyright 2001-2004 Unicode, Inc.
- Scancode info:
- Original SPDX id: COPYRIGHT_SERVICE_LABEL
- Score : 100.00
- Match type : COPYRIGHT
- Files with this license:
- include/antlr3convertutf.hpp [2:2]
diff --git a/contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.licenses.report b/contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.licenses.report
deleted file mode 100644
index a75720d825..0000000000
--- a/contrib/libs/antlr3_cpp_runtime/.yandex_meta/devtools.licenses.report
+++ /dev/null
@@ -1,138 +0,0 @@
-# File format ($ symbol means the beginning of a line):
-#
-# $ # this message
-# $ # =======================
-# $ # comments (all commentaries should starts with some number of spaces and # symbol)
-# ${action} {license spdx} {license text hash}
-# $BELONGS ./ya/make/file/relative/path/1/ya.make ./ya/make/2/ya.make
-# ${all_file_action} filename
-# $ # user commentaries (many lines)
-# $ generated description - files with this license, license text... (some number of lines that starts with some number of spaces, do not modify)
-# ${action} {license spdx} {license text hash}
-# $BELONGS ./ya/make/file/relative/path/3/ya.make
-# ${all_file_action} filename
-# $ # user commentaries
-# $ generated description
-# $ ...
-#
-# You can modify action, all_file_action and add commentaries
-# Available actions:
-# keep - keep license in contrib and use in credits
-# skip - skip license
-# remove - remove all files with this license
-# rename - save license text/links into licenses texts file, but not store SPDX into LINCENSE macro. You should store correct license id into devtools.license.spdx.txt file
-#
-# {all file action} records will be generated when license text contains filename that exists on filesystem (in contrib directory)
-# We suppose that that files can contain some license info
-# Available all file actions:
-# FILE_IGNORE - ignore file (do nothing)
-# FILE_INCLUDE - include all file data into licenses text file
-# =======================
-
-SKIP LicenseRef-scancode-unknown-license-reference 1ea2485bc5ae3a83ea15a16e65f88cb5
-BELONGS ya.make
- License text:
- /// Produce a DOT (see graphviz freeware suite) from a base tree
- Scancode info:
- Original SPDX id: LicenseRef-scancode-unknown-license-reference
- Score : 100.00
- Match type : REFERENCE
- Links : https://github.com/nexB/scancode-toolkit/tree/develop/src/licensedcode/data/licenses/unknown-license-reference.LICENSE
- Files with this license:
- include/antlr3commontreeadaptor.hpp [175:175]
-
-KEEP Unicode-Mappings 21a868edc7974974e055dab130756d20
-BELONGS ya.make
- Note: matched license text is too long. Read it in the source files.
- Scancode info:
- Original SPDX id: LicenseRef-scancode-unicode-mappings
- Score : 99.00
- Match type : NOTICE
- Links : https://github.com/nexB/scancode-toolkit/tree/develop/src/licensedcode/data/licenses/unicode-mappings.LICENSE
- Files with this license:
- include/antlr3convertutf.hpp [4:20]
-
-KEEP BSD-3-Clause 34338f662d2c64c570a2231b4cf8b4d6
-BELONGS ya.make
- License text:
- * as covered by the BSD license under which ANTLR is issued. You can cut the code
- Scancode info:
- Original SPDX id: BSD-3-Clause
- Score : 99.00
- Match type : REFERENCE
- Links : http://www.opensource.org/licenses/BSD-3-Clause, https://spdx.org/licenses/BSD-3-Clause
- Files with this license:
- include/antlr3collections.hpp [96:96]
-
-KEEP BSD-3-Clause b88430f0378e11c82525d52e66d2eea4
-BELONGS ya.make
- Note: matched license text is too long. Read it in the source files.
- Scancode info:
- Original SPDX id: BSD-3-Clause
- Score : 100.00
- Match type : TEXT
- Links : http://www.opensource.org/licenses/BSD-3-Clause, https://spdx.org/licenses/BSD-3-Clause
- Files with this license:
- include/antlr3.hpp [9:29]
- include/antlr3baserecognizer.hpp [16:36]
- include/antlr3bitset.hpp [17:37]
- include/antlr3collections.hpp [10:30]
- include/antlr3commontoken.hpp [20:40]
- include/antlr3commontree.hpp [14:34]
- include/antlr3commontreeadaptor.hpp [14:34]
- include/antlr3commontreenodestream.hpp [14:34]
- include/antlr3cyclicdfa.hpp [15:35]
- include/antlr3debugeventlistener.hpp [24:44]
- include/antlr3defs.hpp [13:33]
- include/antlr3errors.hpp [10:30]
- include/antlr3exception.hpp [24:44]
- include/antlr3filestream.hpp [10:30]
- include/antlr3input.hpp [17:37]
- include/antlr3interfaces.hpp [15:35]
- include/antlr3intstream.hpp [40:60]
- include/antlr3lexer.hpp [39:59]
- include/antlr3memory.hpp [10:30]
- include/antlr3parser.hpp [15:35]
- include/antlr3recognizersharedstate.hpp [23:43]
- include/antlr3rewriterulesubtreestream.hpp [10:30]
- include/antlr3rewriteruletokenstream.hpp [10:30]
- include/antlr3rewritestreams.hpp [10:30]
- include/antlr3tokenstream.hpp [15:35]
- include/antlr3treeparser.hpp [10:30]
-
-KEEP BSD-3-Clause d377dec7c659f1f9f14adbdefe822aa2
-BELONGS ya.make
- License text:
- // [The "BSD licence"]
- Scancode info:
- Original SPDX id: BSD-3-Clause
- Score : 99.00
- Match type : REFERENCE
- Links : http://www.opensource.org/licenses/BSD-3-Clause, https://spdx.org/licenses/BSD-3-Clause
- Files with this license:
- include/antlr3.hpp [4:4]
- include/antlr3baserecognizer.hpp [10:10]
- include/antlr3bitset.hpp [11:11]
- include/antlr3collections.hpp [4:4]
- include/antlr3commontoken.hpp [14:14]
- include/antlr3commontree.hpp [8:8]
- include/antlr3commontreeadaptor.hpp [8:8]
- include/antlr3commontreenodestream.hpp [8:8]
- include/antlr3cyclicdfa.hpp [9:9]
- include/antlr3debugeventlistener.hpp [18:18]
- include/antlr3defs.hpp [7:7]
- include/antlr3errors.hpp [4:4]
- include/antlr3exception.hpp [18:18]
- include/antlr3filestream.hpp [4:4]
- include/antlr3input.hpp [11:11]
- include/antlr3interfaces.hpp [10:10]
- include/antlr3intstream.hpp [34:34]
- include/antlr3lexer.hpp [33:33]
- include/antlr3memory.hpp [4:4]
- include/antlr3parser.hpp [9:9]
- include/antlr3recognizersharedstate.hpp [17:17]
- include/antlr3rewriterulesubtreestream.hpp [4:4]
- include/antlr3rewriteruletokenstream.hpp [4:4]
- include/antlr3rewritestreams.hpp [4:4]
- include/antlr3tokenstream.hpp [9:9]
- include/antlr3treeparser.hpp [4:4]
diff --git a/contrib/libs/antlr3_cpp_runtime/.yandex_meta/licenses.list.txt b/contrib/libs/antlr3_cpp_runtime/.yandex_meta/licenses.list.txt
deleted file mode 100644
index 7b99c403e9..0000000000
--- a/contrib/libs/antlr3_cpp_runtime/.yandex_meta/licenses.list.txt
+++ /dev/null
@@ -1,58 +0,0 @@
-====================BSD-3-Clause====================
- * as covered by the BSD license under which ANTLR is issued. You can cut the code
-
-
-====================BSD-3-Clause====================
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions
-// are met:
-// 1. Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// 2. Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-// 3. The name of the author may not be used to endorse or promote products
-// derived from this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-
-====================BSD-3-Clause====================
-// [The "BSD licence"]
-
-
-====================COPYRIGHT====================
- * Copyright 2001-2004 Unicode, Inc.
-
-
-====================COPYRIGHT====================
-// Copyright (c) 2005-2009 Gokulakannan Somasundaram, ElectronDB
-
-
-====================Unicode-Mappings====================
- * Disclaimer
- *
- * This source code is provided as is by Unicode, Inc. No claims are
- * made as to fitness for any particular purpose. No warranties of any
- * kind are expressed or implied. The recipient agrees to determine
- * applicability of information provided. If this file has been
- * purchased on magnetic or optical media from Unicode, Inc., the
- * sole remedy for any claim will be exchange of defective media
- * within 90 days of receipt.
- *
- * Limitations on Rights to Redistribute This Code
- *
- * Unicode, Inc. hereby grants the right to freely use the information
- * supplied in this file in the creation of products supporting the
- * Unicode Standard, and to make copies of this file in any form
- * for internal or external distribution as long as this notice
- * remains attached.
diff --git a/contrib/libs/antlr3_cpp_runtime/include/antlr3.inl b/contrib/libs/antlr3_cpp_runtime/include/antlr3.inl
deleted file mode 100644
index b2d223398d..0000000000
--- a/contrib/libs/antlr3_cpp_runtime/include/antlr3.inl
+++ /dev/null
@@ -1,9 +0,0 @@
-namespace antlr3 {
-
-//static
-ANTLR_INLINE void GenericStream::displayRecognitionError( const StringType& str )
-{
- fprintf(stderr, str.c_str() );
-}
-
-}
diff --git a/contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.hpp b/contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.hpp
deleted file mode 100644
index a8d7396643..0000000000
--- a/contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.hpp
+++ /dev/null
@@ -1,299 +0,0 @@
-#ifndef ANTLR3REWRITESTREAM_HPP
-#define ANTLR3REWRITESTREAM_HPP
-
-// [The "BSD licence"]
-// Copyright (c) 2005-2009 Gokulakannan Somasundaram, ElectronDB
-
-//
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions
-// are met:
-// 1. Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-// 2. Redistributions in binary form must reproduce the above copyright
-// notice, this list of conditions and the following disclaimer in the
-// documentation and/or other materials provided with the distribution.
-// 3. The name of the author may not be used to endorse or promote products
-// derived from this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
-// IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
-// OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
-// IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
-// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
-// NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
-// THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-/// A generic list of elements tracked in an alternative to be used in
-/// a -> rewrite rule.
-///
-/// In the C implementation, all tree oriented streams return a pointer to
-/// the same type: pANTLR3_BASE_TREE. Anything that has subclassed from this
-/// still passes this type, within which there is a super pointer, which points
-/// to it's own data and methods. Hence we do not need to implement this as
-/// the equivalent of an abstract class, but just fill in the appropriate interface
-/// as usual with this model.
-///
-/// Once you start next()ing, do not try to add more elements. It will
-/// break the cursor tracking I believe.
-///
-///
-/// \see #pANTLR3_REWRITE_RULE_NODE_STREAM
-/// \see #pANTLR3_REWRITE_RULE_ELEMENT_STREAM
-/// \see #pANTLR3_REWRITE_RULE_SUBTREE_STREAM
-///
-/// TODO: add mechanism to detect/puke on modification after reading from stream
-///
-namespace antlr3 {
-
-template<class ImplTraits, class ElementType>
-//template<class ImplTraits>
-class RewriteRuleElementStream : public ImplTraits::AllocPolicyType
-{
-public:
- //typedef typename ElementTypePtr::element_type ElementType; unique_ptr
- //typedef typename ImplTraits::TreeType TreeType;
- typedef typename ImplTraits::AllocPolicyType AllocPolicyType;
- typedef typename ImplTraits::TreeAdaptorType TreeAdaptorType;
-
- //typedef typename ImplTraits::template RecognizerType< typename SuperType::StreamType > RecognizerType;
- typedef typename ImplTraits::StringType StringType;
- typedef typename AllocPolicyType::template VectorType< ElementType* > ElementsType;
-
-protected:
- /// The list of tokens or subtrees we are tracking
- ///
- ElementsType m_elements;
-
- /// The element or stream description; usually has name of the token or
- /// rule reference that this list tracks. Can include rulename too, but
- /// the exception would track that info.
- ///
- StringType m_elementDescription;
-
-private:
- ElementType* dupImpl(typename ImplTraits::CommonTokenType* el);
- ElementType* dupImpl(typename ImplTraits::TreeTypePtr el);
-
-
- /// Pointer to the tree adaptor in use for this stream
- ///
- TreeAdaptorType* m_adaptor;
-
- /// Cursor 0..n-1. If singleElement!=NULL, cursor is 0 until you next(),
- /// which bumps it to 1 meaning no more elements.
- ///
- ANTLR_UINT32 m_cursor;
-
- /// Once a node / subtree has been used in a stream, it must be dup'ed
- /// from then on. Streams are reset after sub rules so that the streams
- /// can be reused in future sub rules. So, reset must set a dirty bit.
- /// If dirty, then next() always returns a dup.
- ///
- bool m_dirty;
-
-public:
- RewriteRuleElementStream(TreeAdaptorType* adaptor, const char* description);
- RewriteRuleElementStream(TreeAdaptorType* adaptor, const char* description, const ElementType* oneElement);
- RewriteRuleElementStream(TreeAdaptorType* adaptor, const char* description, const ElementsType& elements);
-
- ~RewriteRuleElementStream();
- // Methods
-
- /// Reset the condition of this stream so that it appears we have
- /// not consumed any of its elements. Elements themselves are untouched.
- ///
- void reset();
-
- /// Add a new pANTLR3_BASE_TREE to this stream
- ///
- void add(ElementType* el);
-
- /// Return the next element in the stream. If out of elements, throw
- /// an exception unless size()==1. If size is 1, then return elements[0].
- ///
- //TokenType* next();
- ElementType nextTree();
- //TokenType* nextToken();
- ElementType* _next();
-
- /// When constructing trees, sometimes we need to dup a token or AST
- /// subtree. Dup'ing a token means just creating another AST node
- /// around it. For trees, you must call the adaptor.dupTree().
- ///
- ElementType* dup( ElementType* el );
-
- /// Ensure stream emits trees; tokens must be converted to AST nodes.
- /// AST nodes can be passed through unmolested.
- ///
- ElementType* toTree(ElementType* el);
-
- /// Returns true if there is a next element available
- ///
- bool hasNext();
-
- /// Treat next element as a single node even if it's a subtree.
- /// This is used instead of next() when the result has to be a
- /// tree root node. Also prevents us from duplicating recently-added
- /// children; e.g., ^(type ID)+ adds ID to type and then 2nd iteration
- /// must dup the type node, but ID has been added.
- ///
- /// Referencing to a rule result twice is ok; dup entire tree as
- /// we can't be adding trees; e.g., expr expr.
- ///
- //TreeTypePtr nextNode();
-
- /// Number of elements available in the stream
- ///
- ANTLR_UINT32 size();
-
- /// Returns the description string if there is one available (check for NULL).
- ///
- StringType getDescription();
-
-protected:
- void init(TreeAdaptorType* adaptor, const char* description);
-};
-
-/// This is an implementation of a token stream, which is basically an element
-/// stream that deals with tokens only.
-///
-template<class ImplTraits>
-//class RewriteRuleTokenStream : public ImplTraits::template RewriteRuleElementStreamType< typename ImplTraits::ParserType>
-class RewriteRuleTokenStream
- //: public ImplTraits::template RewriteStreamType< const typename ImplTraits::CommonTokenType >
-{
-public:
- typedef typename ImplTraits::AllocPolicyType AllocPolicyType;
- typedef typename ImplTraits::TreeAdaptorType TreeAdaptorType;
- typedef typename ImplTraits::ParserType ComponentType;
- typedef typename ComponentType::StreamType StreamType;
- typedef typename ImplTraits::CommonTokenType TokenType;
- typedef typename ImplTraits::TreeType TreeType;
- typedef typename ImplTraits::TreeTypePtr TreeTypePtr;
- typedef typename AllocPolicyType::template VectorType< TokenType* > ElementsType;
- typedef typename ImplTraits::template RecognizerType< StreamType > RecognizerType;
- typedef typename ImplTraits::template RewriteStreamType< const typename ImplTraits::CommonTokenType > BaseType;
-
-public:
- RewriteRuleTokenStream(TreeAdaptorType* adaptor, const char* description);
- RewriteRuleTokenStream(TreeAdaptorType* adaptor, const char* description, const TokenType* oneElement);
- RewriteRuleTokenStream(TreeAdaptorType* adaptor, const char* description, const ElementsType& elements);
-
- TreeTypePtr nextNode();
- TokenType* nextToken();
-
- /// TODO copied from RewriteRuleElementStreamType
- /// Add a new pANTLR3_BASE_TREE to this stream
- ///
- typedef typename ImplTraits::CommonTokenType ElementType;
- void add(const ElementType* el);
- /// Pointer to the tree adaptor in use for this stream
- ///
- TreeAdaptorType* m_adaptor;
- ElementType* _next();
-
-private:
- //TreeTypePtr nextNodeToken();
-};
-
-/// This is an implementation of a subtree stream which is a set of trees
-/// modeled as an element stream.
-///
-template<class ImplTraits>
-//class RewriteRuleSubtreeStream : public ImplTraits::template RewriteStreamType< typename ImplTraits::TreeParserType>
-class RewriteRuleSubtreeStream
- //: public ImplTraits::template RewriteStreamType< typename ImplTraits::TreeType >
-{
-public:
- typedef typename ImplTraits::AllocPolicyType AllocPolicyType;
- typedef typename ImplTraits::TreeAdaptorType TreeAdaptorType;
- typedef typename ImplTraits::TreeParserType ComponentType;
- typedef typename ComponentType::StreamType StreamType;
- typedef typename ImplTraits::TreeType TreeType;
- typedef typename ImplTraits::TreeTypePtr TreeTypePtr;
- typedef TreeType TokenType;
- typedef typename ImplTraits::template RecognizerType< StreamType > RecognizerType;
- typedef typename AllocPolicyType::template VectorType< TokenType* > ElementsType;
- typedef typename ImplTraits::template RewriteStreamType< typename ImplTraits::TreeType > BaseType;
-
- RewriteRuleSubtreeStream(TreeAdaptorType* adaptor, const char* description);
- RewriteRuleSubtreeStream(TreeAdaptorType* adaptor, const char* description, TreeTypePtr& oneElement);
- RewriteRuleSubtreeStream(TreeAdaptorType* adaptor, const char* description, const ElementsType& elements);
-
- TreeTypePtr nextNode(TreeTypePtr);
-
- /// TODO copied from RewriteRuleElementStreamType
- /// Add a new pANTLR3_BASE_TREE to this stream
- ///
- void add(TreeTypePtr& el);
- bool hasNext();
- TreeTypePtr& nextTree();
- void reset();
-
-protected:
- TreeTypePtr dup( TreeTypePtr el );
-
-private:
- TreeTypePtr dupTree( TreeTypePtr el );
-};
-
-/* TODO This class is probably used in TreeParser only
- * Notes about Java target
- * - these classes reimplement only dup and toTree methods:
- * base ElementStr
- * abstract dup
- * toTree(Object e) { return e; }
- * TokenStr
- * dup { throw }
- * toTree(Object e) { return e; }
- * SubTreeStr
- * dup(Object e) { return adaptor.dupTree }
- * NodeStr
- * dup { throw }
- * toTree(Object e) { return adaptor.dupNode }
- * See: RewriteRuleElementStream::dup, RewriteRuleElementStream::dupImpl
- *
- * There should 3 types of specializations for RewriteRuleElementStreamType (which is not defined yet)
- * ATM: RewriteRuleElementStreamType is replaced with ImplTraits::template RewriteStreamType
- *
-/// This is an implementation of a node stream, which is basically an element
-/// stream that deals with tree nodes only.
-///
-template<class ImplTraits>
-//class RewriteRuleNodeStream : public ImplTraits::template RewriteStreamType< typename ImplTraits::TreeParserType>
-class RewriteRuleNodeStream : public ImplTraits::template RewriteStreamType< typename ImplTraits::TreeType >
-{
-public:
- typedef typename ImplTraits::AllocPolicyType AllocPolicyType;
- typedef typename ImplTraits::TreeAdaptorType TreeAdaptorType;
- typedef typename ImplTraits::TreeParserType ComponentType;
- typedef typename ComponentType::StreamType StreamType;
- typedef typename ImplTraits::TreeType TreeType;
- typedef TreeType TokenType;
- typedef typename ImplTraits::template RecognizerType< StreamType > RecognizerType;
- typedef typename AllocPolicyType::template VectorType< TokenType* > ElementsType;
- typedef typename ImplTraits::template RewriteRuleElementStreamType< typename ImplTraits::TreeType > BaseType;
-
-public:
- RewriteRuleNodeStream(TreeAdaptorType* adaptor, const char* description);
- RewriteRuleNodeStream(TreeAdaptorType* adaptor, const char* description, TokenType* oneElement);
- RewriteRuleNodeStream(TreeAdaptorType* adaptor, const char* description, const ElementsType& elements);
-
-protected:
- TreeTypePtr toTree(TreeTypePtr element);
-
-private:
- TreeTypePtr toTreeNode(TreeTypePtr element);
-};
-*/
-}
-
-#include "antlr3rewritestreams.inl"
-
-#endif
diff --git a/contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.inl b/contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.inl
deleted file mode 100644
index 47568da649..0000000000
--- a/contrib/libs/antlr3_cpp_runtime/include/antlr3rewritestreams.inl
+++ /dev/null
@@ -1,363 +0,0 @@
-namespace antlr3 {
-
-template<class ImplTraits, class ElementType>
-RewriteRuleElementStream<ImplTraits, ElementType>::RewriteRuleElementStream(TreeAdaptorType* adaptor,
- const char* description)
-{
- this->init(adaptor, description);
-}
-
-template<class ImplTraits, class ElementType>
-RewriteRuleElementStream<ImplTraits, ElementType>::RewriteRuleElementStream(TreeAdaptorType* adaptor,
- const char* description,
- const ElementType* oneElement)
-{
- this->init(adaptor, description);
- if( oneElement != NULL )
- this->add( oneElement );
-}
-
-template<class ImplTraits, class ElementType>
-RewriteRuleElementStream<ImplTraits, ElementType>::RewriteRuleElementStream(TreeAdaptorType* adaptor,
- const char* description,
- const ElementsType& elements)
- : m_elements(elements)
-{
- this->init(adaptor, description);
-}
-
-template<class ImplTraits, class ElementType>
-void RewriteRuleElementStream<ImplTraits, ElementType>::init(TreeAdaptorType* adaptor,
- const char* description)
-{
- m_adaptor = adaptor;
- m_cursor = 0;
- m_dirty = false;
-}
-
-template<class ImplTraits>
-RewriteRuleTokenStream<ImplTraits>::RewriteRuleTokenStream(TreeAdaptorType* adaptor,
- const char* description)
- //: BaseType(adaptor, description)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleTokenStream<ImplTraits>::RewriteRuleTokenStream(TreeAdaptorType* adaptor,
- const char* description,
- const TokenType* oneElement)
- //: BaseType(adaptor, description, oneElement)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleTokenStream<ImplTraits>::RewriteRuleTokenStream(TreeAdaptorType* adaptor,
- const char* description,
- const ElementsType& elements)
- //: BaseType(adaptor, description, elements)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleSubtreeStream<ImplTraits>::RewriteRuleSubtreeStream(TreeAdaptorType* adaptor,
- const char* description)
- //: BaseType(adaptor, description)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleSubtreeStream<ImplTraits>::RewriteRuleSubtreeStream(TreeAdaptorType* adaptor,
- const char* description,
- TreeTypePtr& oneElement)
- //: BaseType(adaptor, description, oneElement)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleSubtreeStream<ImplTraits>::RewriteRuleSubtreeStream(TreeAdaptorType* adaptor,
- const char* description,
- const ElementsType& elements)
- //: BaseType(adaptor, description, elements)
-{
-}
-
-/*
-template<class ImplTraits>
-RewriteRuleNodeStream<ImplTraits>::RewriteRuleNodeStream(TreeAdaptorType* adaptor,
- const char* description)
- : BaseType(adaptor, description)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleNodeStream<ImplTraits>::RewriteRuleNodeStream(TreeAdaptorType* adaptor,
- const char* description,
- TokenType* oneElement)
- : BaseType(adaptor, description, oneElement)
-{
-}
-
-template<class ImplTraits>
-RewriteRuleNodeStream<ImplTraits>::RewriteRuleNodeStream(TreeAdaptorType* adaptor,
- const char* description,
- const ElementsType& elements)
- : BaseType(adaptor, description, elements)
-{
-}
-*/
-
-template<class ImplTraits, class ElementType>
-void RewriteRuleElementStream<ImplTraits, ElementType>::reset()
-{
- m_cursor = 0;
- m_dirty = true;
-}
-
-template<class ImplTraits, class ElementType>
-void RewriteRuleElementStream<ImplTraits, ElementType>::add(ElementType* el)
-{
- if ( el== NULL )
- return;
-
- m_elements.push_back(el);
-}
-
-template<class ImplTraits, class ElementType>
-ElementType* RewriteRuleElementStream<ImplTraits, ElementType>::_next()
-{
- ANTLR_UINT32 n = this->size();
-
- if (n == 0)
- {
- // This means that the stream is empty
- return NULL; // Caller must cope with this (TODO throw RewriteEmptyStreamException)
- }
-
- // Traversed all the available elements already?
- if ( m_cursor >= n) // out of elements?
- {
- if (n == 1)
- {
- // Special case when size is single element, it will just dup a lot
- //return this->toTree(m_singleElement);
- return this->toTree(m_elements.at(0));
- }
-
- // Out of elements and the size is not 1, so we cannot assume
- // that we just duplicate the entry n times (such as ID ent+ -> ^(ID ent)+)
- // This means we ran out of elements earlier than was expected.
- //
- return NULL; // Caller must cope with this (TODO throw RewriteEmptyStreamException)
- }
-
- // More than just a single element so we extract it from the
- // vector.
- ElementType* t = this->toTree(m_elements.at(m_cursor));
- m_cursor++;
- return t;
-}
-
-template<class ImplTraits, class ElementType>
-ElementType
-RewriteRuleElementStream<ImplTraits, ElementType>::nextTree()
-{
- ANTLR_UINT32 n = this->size();
- if ( m_dirty || ( (m_cursor >=n) && (n==1)) )
- {
- // if out of elements and size is 1, dup
- ElementType* el = this->_next();
- return this->dup(el);
- }
-
- // test size above then fetch
- ElementType* el = this->_next();
- return el;
-}
-
-/*
-template<class ImplTraits, class SuperType>
-typename RewriteRuleElementStream<ImplTraits, SuperType>::TokenType*
-RewriteRuleElementStream<ImplTraits, SuperType>::nextToken()
-{
- return this->_next();
-}
-
-template<class ImplTraits, class SuperType>
-typename RewriteRuleElementStream<ImplTraits, SuperType>::TokenType*
-RewriteRuleElementStream<ImplTraits, SuperType>::next()
-{
- ANTLR_UINT32 s;
- s = this->size();
- if ( (m_cursor >= s) && (s == 1) )
- {
- TreeTypePtr el;
- el = this->_next();
- return this->dup(el);
- }
- return this->_next();
-}
-
-*/
-
-template<class ImplTraits, class ElementType>
-ElementType*
-RewriteRuleElementStream<ImplTraits, ElementType>::dup( ElementType* element)
-{
- return dupImpl(element);
-}
-
-template<class ImplTraits, class ElementType>
-ElementType*
-RewriteRuleElementStream<ImplTraits, ElementType>::dupImpl( typename ImplTraits::CommonTokenType* element)
-{
- return NULL; // TODO throw here
-}
-
-template<class ImplTraits, class ElementType>
-ElementType*
-RewriteRuleElementStream<ImplTraits, ElementType>::dupImpl( typename ImplTraits::TreeTypePtr element)
-{
- return m_adaptor->dupTree(element);
-}
-
-template<class ImplTraits>
-typename RewriteRuleSubtreeStream<ImplTraits>::TreeTypePtr
-RewriteRuleSubtreeStream<ImplTraits>::dup(TreeTypePtr element)
-{
- return this->dupTree(element);
-}
-
-template<class ImplTraits>
-typename RewriteRuleSubtreeStream<ImplTraits>::TreeTypePtr
-RewriteRuleSubtreeStream<ImplTraits>::dupTree(TreeTypePtr element)
-{
- return BaseType::m_adaptor->dupNode(element);
-}
-
-template<class ImplTraits, class ElementType>
-ElementType*
-RewriteRuleElementStream<ImplTraits, ElementType>::toTree( ElementType* element)
-{
- return element;
-}
-
-/*
-template<class ImplTraits>
-typename RewriteRuleNodeStream<ImplTraits>::TreeTypePtr
-RewriteRuleNodeStream<ImplTraits>::toTree(TreeTypePtr element)
-{
- return this->toTreeNode(element);
-}
-
-template<class ImplTraits>
-typename RewriteRuleNodeStream<ImplTraits>::TreeTypePtr
-RewriteRuleNodeStream<ImplTraits>::toTreeNode(TreeTypePtr element)
-{
- return BaseType::m_adaptor->dupNode(element);
-}
-*/
-
-template<class ImplTraits, class ElementType>
-bool RewriteRuleElementStream<ImplTraits, ElementType>::hasNext()
-{
- if ( !m_elements.empty() && m_cursor < m_elements.size())
- {
- return true;
- }
- else
- {
- return false;
- }
-}
-
-template<class ImplTraits >
-typename RewriteRuleTokenStream<ImplTraits>::TreeTypePtr
-RewriteRuleTokenStream<ImplTraits>::nextNode()
-{
- TokenType *Token = this->nextToken();
- //return BaseType::m_adaptor->create(Token);
- return m_adaptor->create(Token);
-}
-
-/*
-template<class ImplTraits>
-typename RewriteRuleTokenStream<ImplTraits>::TreeTypePtr
-RewriteRuleTokenStream<ImplTraits>::nextNodeToken()
-{
- return BaseType::m_adaptor->create(this->_next());
-}
-*/
-
-/// Number of elements available in the stream
-///
-template<class ImplTraits, class ElementType>
-ANTLR_UINT32 RewriteRuleElementStream<ImplTraits, ElementType>::size()
-{
- return (ANTLR_UINT32)(m_elements.size());
-}
-
-template<class ImplTraits, class ElementType>
-typename RewriteRuleElementStream<ImplTraits, ElementType>::StringType
-RewriteRuleElementStream<ImplTraits, ElementType>::getDescription()
-{
- if ( m_elementDescription.empty() )
- {
- m_elementDescription = "<unknown source>";
- }
- return m_elementDescription;
-}
-
-template<class ImplTraits, class ElementType>
-RewriteRuleElementStream<ImplTraits, ElementType>::~RewriteRuleElementStream()
-{
- // Before placing the stream back in the pool, we
- // need to clear any vector it has. This is so any
- // free pointers that are associated with the
- // entries are called. However, if this particular function is called
- // then we know that the entries in the stream are definitely
- // tree nodes. Hence we check to see if any of them were nilNodes as
- // if they were, we can reuse them.
- //
- // We have some elements to traverse
- //
- for (ANTLR_UINT32 i = 0; i < m_elements.size(); i++)
- {
- ElementType *tree = m_elements.at(i);
- //if ( (tree != NULL) && tree->isNilNode() )
- {
- // Had to remove this for now, check is not comprehensive enough
- // tree->reuse(tree);
- }
- }
- m_elements.clear();
-}
-
-template<class ImplTraits>
-typename RewriteRuleTokenStream<ImplTraits>::TokenType*
-RewriteRuleTokenStream<ImplTraits>::nextToken()
-{
- return this->_next();
-}
-
-template<class ImplTraits>
-typename RewriteRuleSubtreeStream<ImplTraits>::TreeTypePtr
-RewriteRuleSubtreeStream<ImplTraits>::nextNode(TreeTypePtr element)
-{
- //System.out.println("nextNode: elements="+elements+", singleElement="+((Tree)singleElement).toStringTree());
- ANTLR_UINT32 n = this->size();
- if ( BaseType::m_dirty || (BaseType::m_cursor>=n && n==1) ) {
- // if out of elements and size is 1, dup (at most a single node
- // since this is for making root nodes).
- TreeTypePtr el = this->_next();
- return BaseType::m_adaptor->dupNode(el);
- }
- // test size above then fetch
- TreeType *tree = this->_next();
- while (BaseType::m_adaptor.isNil(tree) && BaseType::m_adaptor.getChildCount(tree) == 1)
- tree = BaseType::m_adaptor->getChild(tree, 0);
- //System.out.println("_next="+((Tree)tree).toStringTree());
- TreeType *el = BaseType::m_adaptor->dupNode(tree); // dup just the root (want node here)
- return el;
-}
-
-}