expressir 0.2.4-x64-mingw32 → 0.2.10-x64-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.cross_rubies +30 -0
- data/.github/workflows/rake.yml +45 -46
- data/.github/workflows/release.yml +83 -75
- data/.gitignore +17 -15
- data/.gitmodules +3 -3
- data/.rspec +2 -2
- data/.rubocop.yml +508 -508
- data/Gemfile +4 -6
- data/README.adoc +147 -147
- data/Rakefile +11 -17
- data/bin/console +12 -12
- data/bin/rspec +29 -29
- data/bin/setup +8 -8
- data/demo.rb +18 -18
- data/docs/development.md +90 -90
- data/exe/expressir +20 -20
- data/exe/generate-parser +47 -47
- data/expressir.gemspec +43 -40
- data/lib/expressir.rb +21 -21
- data/lib/expressir/cli.rb +27 -27
- data/lib/expressir/cli/ui.rb +36 -36
- data/lib/expressir/config.rb +23 -23
- data/lib/expressir/express.rb +11 -11
- data/lib/expressir/express/aggregate_dimension.rb +38 -38
- data/lib/expressir/express/attribute.rb +15 -15
- data/lib/expressir/express/comment.rb +7 -7
- data/lib/expressir/express/defined_type.rb +36 -36
- data/lib/expressir/express/derived.rb +65 -65
- data/lib/expressir/express/derived_aggregate.rb +43 -43
- data/lib/expressir/express/entity.rb +137 -137
- data/lib/expressir/express/explicit.rb +70 -70
- data/lib/expressir/express/explicit_aggregate.rb +46 -46
- data/lib/expressir/express/explicit_or_derived.rb +16 -16
- data/lib/expressir/express/global_rule.rb +44 -44
- data/lib/expressir/express/interface_specification.rb +51 -51
- data/lib/expressir/express/interfaced_item.rb +38 -38
- data/lib/expressir/express/inverse.rb +46 -46
- data/lib/expressir/express/inverse_aggregate.rb +37 -37
- data/lib/expressir/express/model_element.rb +7 -7
- data/lib/expressir/express/named_type.rb +19 -19
- data/lib/expressir/express/remark.rb +8 -8
- data/lib/expressir/express/repository.rb +306 -306
- data/lib/expressir/express/schema_definition.rb +96 -96
- data/lib/expressir/express/subtype_constraint.rb +14 -14
- data/lib/expressir/express/type.rb +26 -26
- data/lib/expressir/express/type_aggregate.rb +42 -42
- data/lib/expressir/express/type_enum.rb +29 -29
- data/lib/expressir/express/type_parser.rb +45 -45
- data/lib/expressir/express/type_select.rb +82 -82
- data/lib/expressir/express/unique_rule.rb +35 -35
- data/lib/expressir/express/where_rule.rb +32 -32
- data/lib/expressir/express_exp/2.4/express_parser.so +0 -0
- data/lib/expressir/express_exp/2.5/express_parser.so +0 -0
- data/lib/expressir/express_exp/2.6/express_parser.so +0 -0
- data/lib/expressir/express_exp/2.7/express_parser.so +0 -0
- data/lib/expressir/express_exp/3.0/express_parser.so +0 -0
- data/lib/expressir/express_exp/formatter.rb +1500 -1449
- data/lib/expressir/express_exp/parser.rb +53 -35
- data/lib/expressir/express_exp/visitor.rb +2555 -2450
- data/lib/expressir/express_parser.rb +30 -30
- data/lib/expressir/model.rb +67 -64
- data/lib/expressir/model/attribute.rb +28 -26
- data/lib/expressir/model/constant.rb +18 -16
- data/lib/expressir/model/entity.rb +38 -45
- data/lib/expressir/model/enumeration_item.rb +12 -10
- data/lib/expressir/model/expressions/aggregate_initializer.rb +12 -12
- data/lib/expressir/model/expressions/aggregate_item.rb +14 -14
- data/lib/expressir/model/expressions/attribute_reference.rb +14 -14
- data/lib/expressir/model/expressions/binary_expression.rb +39 -39
- data/lib/expressir/model/expressions/call.rb +14 -14
- data/lib/expressir/model/expressions/entity_constructor.rb +14 -14
- data/lib/expressir/model/expressions/group_reference.rb +14 -14
- data/lib/expressir/model/expressions/index_reference.rb +16 -16
- data/lib/expressir/model/expressions/interval.rb +20 -20
- data/lib/expressir/model/expressions/query_expression.rb +27 -25
- data/lib/expressir/model/expressions/simple_reference.rb +12 -12
- data/lib/expressir/model/expressions/unary_expression.rb +18 -18
- data/lib/expressir/model/function.rb +55 -61
- data/lib/expressir/model/identifier.rb +9 -8
- data/lib/expressir/model/informal_proposition.rb +13 -0
- data/lib/expressir/model/interface.rb +17 -17
- data/lib/expressir/model/literals/binary.rb +12 -12
- data/lib/expressir/model/literals/integer.rb +12 -12
- data/lib/expressir/model/literals/logical.rb +16 -16
- data/lib/expressir/model/literals/real.rb +12 -12
- data/lib/expressir/model/literals/string.rb +14 -14
- data/lib/expressir/model/model_element.rb +67 -0
- data/lib/expressir/model/parameter.rb +18 -16
- data/lib/expressir/model/procedure.rb +53 -59
- data/lib/expressir/model/renamed_ref.rb +12 -12
- data/lib/expressir/model/repository.rb +18 -18
- data/lib/expressir/model/rule.rb +58 -61
- data/lib/expressir/model/schema.rb +55 -66
- data/lib/expressir/model/scope.rb +62 -16
- data/lib/expressir/model/statements/alias.rb +27 -25
- data/lib/expressir/model/statements/assignment.rb +14 -14
- data/lib/expressir/model/statements/call.rb +14 -14
- data/lib/expressir/model/statements/case.rb +16 -16
- data/lib/expressir/model/statements/case_action.rb +14 -14
- data/lib/expressir/model/statements/compound.rb +12 -12
- data/lib/expressir/model/statements/escape.rb +7 -7
- data/lib/expressir/model/statements/if.rb +16 -16
- data/lib/expressir/model/statements/null.rb +7 -7
- data/lib/expressir/model/statements/repeat.rb +35 -33
- data/lib/expressir/model/statements/return.rb +12 -12
- data/lib/expressir/model/statements/skip.rb +7 -7
- data/lib/expressir/model/subtype_constraint.rb +28 -26
- data/lib/expressir/model/type.rb +33 -23
- data/lib/expressir/model/types/aggregate.rb +18 -16
- data/lib/expressir/model/types/array.rb +20 -20
- data/lib/expressir/model/types/bag.rb +16 -16
- data/lib/expressir/model/types/binary.rb +14 -14
- data/lib/expressir/model/types/boolean.rb +7 -7
- data/lib/expressir/model/types/enumeration.rb +18 -18
- data/lib/expressir/model/types/generic.rb +14 -12
- data/lib/expressir/model/types/generic_entity.rb +14 -12
- data/lib/expressir/model/types/integer.rb +7 -7
- data/lib/expressir/model/types/list.rb +18 -18
- data/lib/expressir/model/types/logical.rb +7 -7
- data/lib/expressir/model/types/number.rb +7 -7
- data/lib/expressir/model/types/real.rb +12 -12
- data/lib/expressir/model/types/select.rb +20 -20
- data/lib/expressir/model/types/set.rb +16 -16
- data/lib/expressir/model/types/string.rb +14 -14
- data/lib/expressir/model/unique.rb +16 -14
- data/lib/expressir/model/variable.rb +18 -16
- data/lib/expressir/model/where.rb +16 -14
- data/lib/expressir/parser.rb +6 -6
- data/lib/expressir/parser/owl_parser.rb +8 -8
- data/lib/expressir/version.rb +3 -3
- data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.exp +9589 -9589
- data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.owl +36619 -36619
- data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.xml +13293 -13293
- data/original/examples/employment/eclipse/.project +17 -17
- data/original/examples/employment/eclipse/Express/employment_schema.exp +33 -33
- data/original/examples/employment/eclipse/Express/employment_schema.xmi +77 -77
- data/original/examples/employment/eclipse/Express/employment_schema.xml +92 -92
- data/original/examples/employment/eclipse/Models/Employment.uml +4 -4
- data/original/examples/employment/eclipse/Models/Employment.umldi +240 -240
- data/original/examples/employment/eclipse/readme.txt +6 -6
- data/original/examples/employment/employment_schema.exp +33 -33
- data/original/examples/employment/employment_schema.rb +232 -232
- data/original/examples/employment/employment_schema.xml +92 -92
- data/original/examples/employment/employment_schema___module.rb +46 -46
- data/original/examples/employment/employment_schema___p28attr.rb +126 -126
- data/original/examples/employment/employment_schema___p28inst.rb +26 -26
- data/original/examples/employment/example_employment_data.xml +1 -1
- data/original/examples/employment/example_employment_data_copy.xml +1 -1
- data/original/examples/employment/example_employment_reader.rb +30 -30
- data/original/examples/employment/example_employment_writer.rb +51 -51
- data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.exp +3710 -3710
- data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.owl +35880 -35880
- data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.xmi +15357 -15357
- data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.xml +9467 -9467
- data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.exp +8404 -8404
- data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.owl +43147 -43147
- data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.xmi +18341 -18341
- data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.xml +11631 -11631
- data/original/examples/syntax/remark.exp +189 -145
- data/original/examples/syntax/remark_formatted.exp +213 -174
- data/original/examples/syntax/simple.exp +3 -0
- data/original/examples/syntax/source.exp +16 -0
- data/original/examples/syntax/syntax.exp +323 -310
- data/original/examples/syntax/syntax_formatted.exp +753 -1186
- data/original/exp2ruby.rb +525 -525
- data/original/expsm.rb +34 -34
- data/original/mapping_owl.rb +1018 -1018
- data/original/mapping_sysml.rb +2281 -2281
- data/original/mapping_uml2.rb +598 -598
- data/original/mapping_uml2_eclipse.rb +433 -433
- data/original/reeper.rb +134 -134
- data/rakelib/cross-ruby.rake +308 -0
- data/spec/acceptance/express_to_owl_spec.rb +18 -18
- data/spec/acceptance/version_spec.rb +12 -12
- data/spec/expressir/express/repository_spec.rb +25 -25
- data/spec/expressir/express_exp/ap233_spec.rb +22 -22
- data/spec/expressir/express_exp/format_remark_spec.rb +28 -28
- data/spec/expressir/express_exp/format_syntax_spec.rb +28 -28
- data/spec/expressir/express_exp/head_source_spec.rb +38 -0
- data/spec/expressir/express_exp/parse_multiple_spec.rb +32 -0
- data/spec/expressir/express_exp/parse_remark_spec.rb +411 -345
- data/spec/expressir/express_exp/parse_syntax_spec.rb +3048 -2998
- data/spec/expressir/express_exp/source_spec.rb +29 -0
- data/spec/expressir/model/model_element_spec.rb +59 -0
- data/spec/expressir/model/{find_spec.rb → scope_spec.rb} +123 -110
- data/spec/expressr_spec.rb +5 -5
- data/spec/spec_helper.rb +17 -17
- data/spec/support/console_helper.rb +29 -29
- metadata +41 -371
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/CMakeLists.txt +0 -118
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj +0 -637
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj.filters +0 -984
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj +0 -652
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj.filters +0 -990
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2017.vcxproj +0 -652
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2017.vcxproj.filters +0 -990
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj +0 -652
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj.filters +0 -990
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp-ios/Info.plist +0 -26
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp-ios/antlrcpp_ios.h +0 -17
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.pbxproj +0 -3024
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4.xcscheme +0 -76
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_ios.xcscheme +0 -80
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_static.xcscheme +0 -80
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorListener.cpp +0 -10
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorListener.h +0 -167
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorStrategy.cpp +0 -10
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorStrategy.h +0 -121
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.cpp +0 -34
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.h +0 -27
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.cpp +0 -155
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.h +0 -69
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BailErrorStrategy.cpp +0 -61
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BailErrorStrategy.h +0 -59
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BaseErrorListener.cpp +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BaseErrorListener.h +0 -36
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BufferedTokenStream.cpp +0 -414
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/BufferedTokenStream.h +0 -200
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CharStream.cpp +0 -11
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CharStream.h +0 -37
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.cpp +0 -195
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.h +0 -158
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.cpp +0 -39
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.h +0 -74
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenStream.cpp +0 -78
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenStream.h +0 -79
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ConsoleErrorListener.cpp +0 -15
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ConsoleErrorListener.h +0 -35
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.cpp +0 -333
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.h +0 -466
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DiagnosticErrorListener.cpp +0 -84
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DiagnosticErrorListener.h +0 -80
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.cpp +0 -64
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.h +0 -99
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.cpp +0 -51
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.h +0 -32
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InputMismatchException.cpp +0 -18
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InputMismatchException.h +0 -24
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.h +0 -218
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InterpreterRuleContext.cpp +0 -19
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/InterpreterRuleContext.h +0 -45
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.cpp +0 -295
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.h +0 -196
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.cpp +0 -75
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.h +0 -52
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerNoViableAltException.cpp +0 -36
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerNoViableAltException.h +0 -31
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.cpp +0 -92
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.h +0 -88
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/NoViableAltException.cpp +0 -46
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/NoViableAltException.h +0 -42
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.cpp +0 -648
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.h +0 -467
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.cpp +0 -306
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.h +0 -179
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.cpp +0 -141
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.h +0 -147
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.cpp +0 -53
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.h +0 -38
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.cpp +0 -66
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.h +0 -98
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.cpp +0 -167
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.h +0 -164
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.cpp +0 -143
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.h +0 -137
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContextWithAltNum.cpp +0 -27
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContextWithAltNum.h +0 -32
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.cpp +0 -53
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.h +0 -155
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.h +0 -92
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenFactory.h +0 -30
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.h +0 -85
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStream.cpp +0 -11
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStream.h +0 -137
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.cpp +0 -425
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.h +0 -293
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.cpp +0 -211
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.h +0 -123
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedTokenStream.cpp +0 -270
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedTokenStream.h +0 -115
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.cpp +0 -104
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.h +0 -193
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/WritableToken.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/WritableToken.h +0 -23
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-common.h +0 -137
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-runtime.h +0 -167
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.cpp +0 -209
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.h +0 -112
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.cpp +0 -113
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.h +0 -148
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.cpp +0 -228
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.h +0 -110
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.cpp +0 -64
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.h +0 -50
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp +0 -758
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.h +0 -85
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.cpp +0 -621
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.h +0 -61
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.cpp +0 -63
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.h +0 -87
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.cpp +0 -72
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.h +0 -133
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNType.h +0 -20
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.cpp +0 -14
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.h +0 -24
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.cpp +0 -33
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.h +0 -33
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AmbiguityInfo.cpp +0 -16
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AmbiguityInfo.h +0 -68
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.cpp +0 -82
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.h +0 -43
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.cpp +0 -31
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.h +0 -30
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.h +0 -22
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.h +0 -21
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.cpp +0 -15
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.h +0 -24
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.h +0 -21
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.cpp +0 -14
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.h +0 -47
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionEventInfo.cpp +0 -14
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionEventInfo.h +0 -70
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.cpp +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.h +0 -227
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.cpp +0 -17
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.h +0 -30
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EmptyPredictionContext.cpp +0 -35
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EmptyPredictionContext.h +0 -27
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.cpp +0 -35
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.h +0 -39
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ErrorInfo.cpp +0 -15
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ErrorInfo.h +0 -43
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.cpp +0 -158
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.h +0 -109
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.cpp +0 -84
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.h +0 -44
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.cpp +0 -628
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.h +0 -210
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.h +0 -66
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.cpp +0 -107
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.h +0 -115
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionType.h +0 -55
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.cpp +0 -55
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.h +0 -63
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.cpp +0 -62
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.h +0 -87
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.cpp +0 -63
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.h +0 -82
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.cpp +0 -56
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.h +0 -61
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.cpp +0 -47
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.h +0 -57
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.cpp +0 -47
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.h +0 -57
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.cpp +0 -56
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.h +0 -61
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.cpp +0 -47
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.h +0 -55
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.cpp +0 -56
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.h +0 -55
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.cpp +0 -16
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.h +0 -42
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.h +0 -22
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Makefile +0 -67
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.cpp +0 -27
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.h +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.h +0 -20
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParseInfo.cpp +0 -102
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParseInfo.h +0 -102
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.cpp +0 -1366
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.h +0 -904
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.h +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.h +0 -22
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.cpp +0 -32
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.h +0 -29
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.cpp +0 -17
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.h +0 -62
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.cpp +0 -34
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.h +0 -39
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.cpp +0 -662
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.h +0 -254
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.cpp +0 -201
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.h +0 -436
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.cpp +0 -179
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.h +0 -60
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.cpp +0 -30
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.h +0 -29
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.cpp +0 -16
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.h +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.h +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.cpp +0 -37
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.h +0 -40
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.cpp +0 -377
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.h +0 -222
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.cpp +0 -32
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.h +0 -30
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.cpp +0 -81
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.h +0 -36
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.h +0 -21
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.cpp +0 -15
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.h +0 -35
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.cpp +0 -19
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.h +0 -21
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.cpp +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.h +0 -21
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.cpp +0 -44
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.h +0 -76
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.cpp +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.h +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.cpp +0 -127
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.h +0 -91
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.cpp +0 -67
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.h +0 -32
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.cpp +0 -100
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.h +0 -144
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.cpp +0 -20
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.h +0 -23
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.cpp +0 -124
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.h +0 -31
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.cpp +0 -89
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.h +0 -84
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.cpp +0 -521
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.h +0 -198
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.cpp +0 -134
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.h +0 -76
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Predicate.cpp +0 -4
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Predicate.h +0 -21
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.cpp +0 -13
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.h +0 -170
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.cpp +0 -43
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.h +0 -110
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/BitSet.h +0 -76
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.cpp +0 -248
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.h +0 -78
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Declarations.h +0 -163
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.cpp +0 -36
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.h +0 -54
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/guid.cpp +0 -303
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/guid.h +0 -112
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/AbstractParseTreeVisitor.h +0 -128
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.h +0 -19
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.cpp +0 -23
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.h +0 -33
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.cpp +0 -71
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.h +0 -53
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.cpp +0 -15
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.h +0 -102
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeListener.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeListener.h +0 -39
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeProperty.h +0 -50
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.h +0 -57
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.cpp +0 -49
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.h +0 -31
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.h +0 -32
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.cpp +0 -57
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.h +0 -33
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.cpp +0 -241
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.h +0 -78
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/Chunk.cpp +0 -9
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/Chunk.h +0 -44
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.cpp +0 -69
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.h +0 -132
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.cpp +0 -64
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.h +0 -105
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.cpp +0 -371
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.h +0 -185
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.cpp +0 -77
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.h +0 -117
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TagChunk.cpp +0 -39
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TagChunk.h +0 -86
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TextChunk.cpp +0 -28
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TextChunk.h +0 -51
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.cpp +0 -36
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.h +0 -80
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.cpp +0 -154
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.h +0 -86
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathElement.cpp +0 -31
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathElement.h +0 -40
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.cpp +0 -173
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.g4 +0 -64
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.h +0 -56
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.tokens +0 -12
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.cpp +0 -13
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.h +0 -22
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.cpp +0 -20
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.h +0 -27
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.cpp +0 -30
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.h +0 -26
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.cpp +0 -20
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.h +0 -25
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.cpp +0 -33
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.h +0 -26
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.cpp +0 -23
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.h +0 -23
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.cpp +0 -24
- data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.h +0 -23
- data/ext/express-parser/antlrgen/Express.interp +0 -532
- data/ext/express-parser/antlrgen/Express.tokens +0 -190
- data/ext/express-parser/antlrgen/ExpressBaseListener.cpp +0 -7
- data/ext/express-parser/antlrgen/ExpressBaseListener.h +0 -623
- data/ext/express-parser/antlrgen/ExpressBaseVisitor.cpp +0 -7
- data/ext/express-parser/antlrgen/ExpressBaseVisitor.h +0 -816
- data/ext/express-parser/antlrgen/ExpressLexer.cpp +0 -1169
- data/ext/express-parser/antlrgen/ExpressLexer.h +0 -85
- data/ext/express-parser/antlrgen/ExpressLexer.interp +0 -534
- data/ext/express-parser/antlrgen/ExpressLexer.tokens +0 -190
- data/ext/express-parser/antlrgen/ExpressListener.cpp +0 -7
- data/ext/express-parser/antlrgen/ExpressListener.h +0 -616
- data/ext/express-parser/antlrgen/ExpressParser.cpp +0 -17284
- data/ext/express-parser/antlrgen/ExpressParser.h +0 -3696
- data/ext/express-parser/antlrgen/ExpressVisitor.cpp +0 -7
- data/ext/express-parser/antlrgen/ExpressVisitor.h +0 -422
- data/ext/express-parser/express_parser.cpp +0 -17931
- data/ext/express-parser/extconf.rb +0 -34
- data/lib/express_parser.so +0 -0
@@ -1,30 +0,0 @@
|
|
1
|
-
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
|
2
|
-
* Use of this file is governed by the BSD 3-clause license that
|
3
|
-
* can be found in the LICENSE.txt file in the project root.
|
4
|
-
*/
|
5
|
-
|
6
|
-
#pragma once
|
7
|
-
|
8
|
-
#include "antlr4-common.h"
|
9
|
-
|
10
|
-
namespace antlr4 {
|
11
|
-
|
12
|
-
/// The default mechanism for creating tokens. It's used by default in Lexer and
|
13
|
-
/// the error handling strategy (to create missing tokens). Notifying the parser
|
14
|
-
/// of a new factory means that it notifies it's token source and error strategy.
|
15
|
-
template<typename Symbol>
|
16
|
-
class ANTLR4CPP_PUBLIC TokenFactory {
|
17
|
-
public:
|
18
|
-
virtual ~TokenFactory() {}
|
19
|
-
|
20
|
-
/// This is the method used to create tokens in the lexer and in the
|
21
|
-
/// error handling strategy. If text!=null, than the start and stop positions
|
22
|
-
/// are wiped to -1 in the text override is set in the CommonToken.
|
23
|
-
virtual std::unique_ptr<Symbol> create(std::pair<TokenSource *, CharStream *> source, size_t type, const std::string &text,
|
24
|
-
size_t channel, size_t start, size_t stop, size_t line, size_t charPositionInLine) = 0;
|
25
|
-
|
26
|
-
/// Generically useful
|
27
|
-
virtual std::unique_ptr<Symbol> create(size_t type, const std::string &text) = 0;
|
28
|
-
};
|
29
|
-
|
30
|
-
} // namespace antlr4
|
@@ -1,9 +0,0 @@
|
|
1
|
-
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
|
2
|
-
* Use of this file is governed by the BSD 3-clause license that
|
3
|
-
* can be found in the LICENSE.txt file in the project root.
|
4
|
-
*/
|
5
|
-
|
6
|
-
#include "TokenSource.h"
|
7
|
-
|
8
|
-
antlr4::TokenSource::~TokenSource() {
|
9
|
-
}
|
@@ -1,85 +0,0 @@
|
|
1
|
-
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
|
2
|
-
* Use of this file is governed by the BSD 3-clause license that
|
3
|
-
* can be found in the LICENSE.txt file in the project root.
|
4
|
-
*/
|
5
|
-
|
6
|
-
#pragma once
|
7
|
-
|
8
|
-
#include "TokenFactory.h"
|
9
|
-
|
10
|
-
namespace antlr4 {
|
11
|
-
|
12
|
-
/// <summary>
|
13
|
-
/// A source of tokens must provide a sequence of tokens via <seealso cref="#nextToken()"/>
|
14
|
-
/// and also must reveal it's source of characters; <seealso cref="CommonToken"/>'s text is
|
15
|
-
/// computed from a <seealso cref="CharStream"/>; it only store indices into the char
|
16
|
-
/// stream.
|
17
|
-
/// <p/>
|
18
|
-
/// Errors from the lexer are never passed to the parser. Either you want to keep
|
19
|
-
/// going or you do not upon token recognition error. If you do not want to
|
20
|
-
/// continue lexing then you do not want to continue parsing. Just throw an
|
21
|
-
/// exception not under <seealso cref="RecognitionException"/> and Java will naturally toss
|
22
|
-
/// you all the way out of the recognizers. If you want to continue lexing then
|
23
|
-
/// you should not throw an exception to the parser--it has already requested a
|
24
|
-
/// token. Keep lexing until you get a valid one. Just report errors and keep
|
25
|
-
/// going, looking for a valid token.
|
26
|
-
/// </summary>
|
27
|
-
class ANTLR4CPP_PUBLIC TokenSource {
|
28
|
-
public:
|
29
|
-
virtual ~TokenSource();
|
30
|
-
|
31
|
-
/// Return a <seealso cref="Token"/> object from your input stream (usually a
|
32
|
-
/// <seealso cref="CharStream"/>). Do not fail/return upon lexing error; keep chewing
|
33
|
-
/// on the characters until you get a good one; errors are not passed through
|
34
|
-
/// to the parser.
|
35
|
-
virtual std::unique_ptr<Token> nextToken() = 0;
|
36
|
-
|
37
|
-
/// <summary>
|
38
|
-
/// Get the line number for the current position in the input stream. The
|
39
|
-
/// first line in the input is line 1.
|
40
|
-
/// </summary>
|
41
|
-
/// <returns> The line number for the current position in the input stream, or
|
42
|
-
/// 0 if the current token source does not track line numbers. </returns>
|
43
|
-
virtual size_t getLine() const = 0;
|
44
|
-
|
45
|
-
/// <summary>
|
46
|
-
/// Get the index into the current line for the current position in the input
|
47
|
-
/// stream. The first character on a line has position 0.
|
48
|
-
/// </summary>
|
49
|
-
/// <returns> The line number for the current position in the input stream, or
|
50
|
-
/// (sze_t)-1 if the current token source does not track character positions. </returns>
|
51
|
-
virtual size_t getCharPositionInLine() = 0;
|
52
|
-
|
53
|
-
/// <summary>
|
54
|
-
/// Get the <seealso cref="CharStream"/> from which this token source is currently
|
55
|
-
/// providing tokens.
|
56
|
-
/// </summary>
|
57
|
-
/// <returns> The <seealso cref="CharStream"/> associated with the current position in
|
58
|
-
/// the input, or {@code null} if no input stream is available for the token
|
59
|
-
/// source. </returns>
|
60
|
-
virtual CharStream* getInputStream() = 0;
|
61
|
-
|
62
|
-
/// <summary>
|
63
|
-
/// Gets the name of the underlying input source. This method returns a
|
64
|
-
/// non-null, non-empty string. If such a name is not known, this method
|
65
|
-
/// returns <seealso cref="IntStream#UNKNOWN_SOURCE_NAME"/>.
|
66
|
-
/// </summary>
|
67
|
-
virtual std::string getSourceName() = 0;
|
68
|
-
|
69
|
-
/// <summary>
|
70
|
-
/// Set the <seealso cref="TokenFactory"/> this token source should use for creating
|
71
|
-
/// <seealso cref="Token"/> objects from the input.
|
72
|
-
/// </summary>
|
73
|
-
/// <param name="factory"> The <seealso cref="TokenFactory"/> to use for creating tokens. </param>
|
74
|
-
template<typename T1>
|
75
|
-
void setTokenFactory(TokenFactory<T1> * /*factory*/) {}
|
76
|
-
|
77
|
-
/// <summary>
|
78
|
-
/// Gets the <seealso cref="TokenFactory"/> this token source is currently using for
|
79
|
-
/// creating <seealso cref="Token"/> objects from the input.
|
80
|
-
/// </summary>
|
81
|
-
/// <returns> The <seealso cref="TokenFactory"/> currently used by this token source. </returns>
|
82
|
-
virtual Ref<TokenFactory<CommonToken>> getTokenFactory() = 0;
|
83
|
-
};
|
84
|
-
|
85
|
-
} // namespace antlr4
|
@@ -1,11 +0,0 @@
|
|
1
|
-
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
|
2
|
-
* Use of this file is governed by the BSD 3-clause license that
|
3
|
-
* can be found in the LICENSE.txt file in the project root.
|
4
|
-
*/
|
5
|
-
|
6
|
-
#include "TokenStream.h"
|
7
|
-
|
8
|
-
using namespace antlr4;
|
9
|
-
|
10
|
-
TokenStream::~TokenStream() {
|
11
|
-
}
|
@@ -1,137 +0,0 @@
|
|
1
|
-
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
|
2
|
-
* Use of this file is governed by the BSD 3-clause license that
|
3
|
-
* can be found in the LICENSE.txt file in the project root.
|
4
|
-
*/
|
5
|
-
|
6
|
-
#pragma once
|
7
|
-
|
8
|
-
#include "IntStream.h"
|
9
|
-
|
10
|
-
namespace antlr4 {
|
11
|
-
|
12
|
-
/// <summary>
|
13
|
-
/// An <seealso cref="IntStream"/> whose symbols are <seealso cref="Token"/> instances.
|
14
|
-
/// </summary>
|
15
|
-
class ANTLR4CPP_PUBLIC TokenStream : public IntStream {
|
16
|
-
/// <summary>
|
17
|
-
/// Get the <seealso cref="Token"/> instance associated with the value returned by
|
18
|
-
/// <seealso cref="#LA LA(k)"/>. This method has the same pre- and post-conditions as
|
19
|
-
/// <seealso cref="IntStream#LA"/>. In addition, when the preconditions of this method
|
20
|
-
/// are met, the return value is non-null and the value of
|
21
|
-
/// {@code LT(k).getType()==LA(k)}.
|
22
|
-
/// </summary>
|
23
|
-
/// <seealso cref= IntStream#LA </seealso>
|
24
|
-
public:
|
25
|
-
virtual ~TokenStream();
|
26
|
-
|
27
|
-
virtual Token* LT(ssize_t k) = 0;
|
28
|
-
|
29
|
-
/// <summary>
|
30
|
-
/// Gets the <seealso cref="Token"/> at the specified {@code index} in the stream. When
|
31
|
-
/// the preconditions of this method are met, the return value is non-null.
|
32
|
-
/// <p/>
|
33
|
-
/// The preconditions for this method are the same as the preconditions of
|
34
|
-
/// <seealso cref="IntStream#seek"/>. If the behavior of {@code seek(index)} is
|
35
|
-
/// unspecified for the current state and given {@code index}, then the
|
36
|
-
/// behavior of this method is also unspecified.
|
37
|
-
/// <p/>
|
38
|
-
/// The symbol referred to by {@code index} differs from {@code seek()} only
|
39
|
-
/// in the case of filtering streams where {@code index} lies before the end
|
40
|
-
/// of the stream. Unlike {@code seek()}, this method does not adjust
|
41
|
-
/// {@code index} to point to a non-ignored symbol.
|
42
|
-
/// </summary>
|
43
|
-
/// <exception cref="IllegalArgumentException"> if {code index} is less than 0 </exception>
|
44
|
-
/// <exception cref="UnsupportedOperationException"> if the stream does not support
|
45
|
-
/// retrieving the token at the specified index </exception>
|
46
|
-
virtual Token* get(size_t index) const = 0;
|
47
|
-
|
48
|
-
/// Gets the underlying TokenSource which provides tokens for this stream.
|
49
|
-
virtual TokenSource* getTokenSource() const = 0;
|
50
|
-
|
51
|
-
/// <summary>
|
52
|
-
/// Return the text of all tokens within the specified {@code interval}. This
|
53
|
-
/// method behaves like the following code (including potential exceptions
|
54
|
-
/// for violating preconditions of <seealso cref="#get"/>, but may be optimized by the
|
55
|
-
/// specific implementation.
|
56
|
-
///
|
57
|
-
/// <pre>
|
58
|
-
/// TokenStream stream = ...;
|
59
|
-
/// String text = "";
|
60
|
-
/// for (int i = interval.a; i <= interval.b; i++) {
|
61
|
-
/// text += stream.get(i).getText();
|
62
|
-
/// }
|
63
|
-
/// </pre>
|
64
|
-
/// </summary>
|
65
|
-
/// <param name="interval"> The interval of tokens within this stream to get text
|
66
|
-
/// for. </param>
|
67
|
-
/// <returns> The text of all tokens within the specified interval in this
|
68
|
-
/// stream.
|
69
|
-
/// </returns>
|
70
|
-
/// <exception cref="NullPointerException"> if {@code interval} is {@code null} </exception>
|
71
|
-
virtual std::string getText(const misc::Interval &interval) = 0;
|
72
|
-
|
73
|
-
/// <summary>
|
74
|
-
/// Return the text of all tokens in the stream. This method behaves like the
|
75
|
-
/// following code, including potential exceptions from the calls to
|
76
|
-
/// <seealso cref="IntStream#size"/> and <seealso cref="#getText(Interval)"/>, but may be
|
77
|
-
/// optimized by the specific implementation.
|
78
|
-
///
|
79
|
-
/// <pre>
|
80
|
-
/// TokenStream stream = ...;
|
81
|
-
/// String text = stream.getText(new Interval(0, stream.size()));
|
82
|
-
/// </pre>
|
83
|
-
/// </summary>
|
84
|
-
/// <returns> The text of all tokens in the stream. </returns>
|
85
|
-
virtual std::string getText() = 0;
|
86
|
-
|
87
|
-
/// <summary>
|
88
|
-
/// Return the text of all tokens in the source interval of the specified
|
89
|
-
/// context. This method behaves like the following code, including potential
|
90
|
-
/// exceptions from the call to <seealso cref="#getText(Interval)"/>, but may be
|
91
|
-
/// optimized by the specific implementation.
|
92
|
-
/// </p>
|
93
|
-
/// If {@code ctx.getSourceInterval()} does not return a valid interval of
|
94
|
-
/// tokens provided by this stream, the behavior is unspecified.
|
95
|
-
///
|
96
|
-
/// <pre>
|
97
|
-
/// TokenStream stream = ...;
|
98
|
-
/// String text = stream.getText(ctx.getSourceInterval());
|
99
|
-
/// </pre>
|
100
|
-
/// </summary>
|
101
|
-
/// <param name="ctx"> The context providing the source interval of tokens to get
|
102
|
-
/// text for. </param>
|
103
|
-
/// <returns> The text of all tokens within the source interval of {@code ctx}. </returns>
|
104
|
-
virtual std::string getText(RuleContext *ctx) = 0;
|
105
|
-
|
106
|
-
/// <summary>
|
107
|
-
/// Return the text of all tokens in this stream between {@code start} and
|
108
|
-
/// {@code stop} (inclusive).
|
109
|
-
/// <p/>
|
110
|
-
/// If the specified {@code start} or {@code stop} token was not provided by
|
111
|
-
/// this stream, or if the {@code stop} occurred before the {@code start}
|
112
|
-
/// token, the behavior is unspecified.
|
113
|
-
/// <p/>
|
114
|
-
/// For streams which ensure that the <seealso cref="Token#getTokenIndex"/> method is
|
115
|
-
/// accurate for all of its provided tokens, this method behaves like the
|
116
|
-
/// following code. Other streams may implement this method in other ways
|
117
|
-
/// provided the behavior is consistent with this at a high level.
|
118
|
-
///
|
119
|
-
/// <pre>
|
120
|
-
/// TokenStream stream = ...;
|
121
|
-
/// String text = "";
|
122
|
-
/// for (int i = start.getTokenIndex(); i <= stop.getTokenIndex(); i++) {
|
123
|
-
/// text += stream.get(i).getText();
|
124
|
-
/// }
|
125
|
-
/// </pre>
|
126
|
-
/// </summary>
|
127
|
-
/// <param name="start"> The first token in the interval to get text for. </param>
|
128
|
-
/// <param name="stop"> The last token in the interval to get text for (inclusive). </param>
|
129
|
-
/// <returns> The text of all tokens lying between the specified {@code start}
|
130
|
-
/// and {@code stop} tokens.
|
131
|
-
/// </returns>
|
132
|
-
/// <exception cref="UnsupportedOperationException"> if this stream does not support
|
133
|
-
/// this method for the specified tokens </exception>
|
134
|
-
virtual std::string getText(Token *start, Token *stop) = 0;
|
135
|
-
};
|
136
|
-
|
137
|
-
} // namespace antlr4
|
@@ -1,425 +0,0 @@
|
|
1
|
-
/* Copyright (c) 2012-2017 The ANTLR Project. All rights reserved.
|
2
|
-
* Use of this file is governed by the BSD 3-clause license that
|
3
|
-
* can be found in the LICENSE.txt file in the project root.
|
4
|
-
*/
|
5
|
-
|
6
|
-
#include "Exceptions.h"
|
7
|
-
#include "misc/Interval.h"
|
8
|
-
#include "Token.h"
|
9
|
-
#include "TokenStream.h"
|
10
|
-
|
11
|
-
#include "TokenStreamRewriter.h"
|
12
|
-
|
13
|
-
using namespace antlr4;
|
14
|
-
|
15
|
-
using antlr4::misc::Interval;
|
16
|
-
|
17
|
-
TokenStreamRewriter::RewriteOperation::RewriteOperation(TokenStreamRewriter *outerInstance_, size_t index_)
|
18
|
-
: outerInstance(outerInstance_) {
|
19
|
-
|
20
|
-
InitializeInstanceFields();
|
21
|
-
this->index = index_;
|
22
|
-
}
|
23
|
-
|
24
|
-
TokenStreamRewriter::RewriteOperation::RewriteOperation(TokenStreamRewriter *outerInstance_, size_t index_,
|
25
|
-
const std::string& text_) : outerInstance(outerInstance_) {
|
26
|
-
|
27
|
-
InitializeInstanceFields();
|
28
|
-
this->index = index_;
|
29
|
-
this->text = text_;
|
30
|
-
}
|
31
|
-
|
32
|
-
TokenStreamRewriter::RewriteOperation::~RewriteOperation()
|
33
|
-
{
|
34
|
-
}
|
35
|
-
|
36
|
-
size_t TokenStreamRewriter::RewriteOperation::execute(std::string * /*buf*/) {
|
37
|
-
return index;
|
38
|
-
}
|
39
|
-
|
40
|
-
std::string TokenStreamRewriter::RewriteOperation::toString() {
|
41
|
-
std::string opName = "TokenStreamRewriter";
|
42
|
-
size_t dollarIndex = opName.find('$');
|
43
|
-
opName = opName.substr(dollarIndex + 1, opName.length() - (dollarIndex + 1));
|
44
|
-
return "<" + opName + "@" + outerInstance->tokens->get(dollarIndex)->getText() + ":\"" + text + "\">";
|
45
|
-
}
|
46
|
-
|
47
|
-
void TokenStreamRewriter::RewriteOperation::InitializeInstanceFields() {
|
48
|
-
instructionIndex = 0;
|
49
|
-
index = 0;
|
50
|
-
}
|
51
|
-
|
52
|
-
TokenStreamRewriter::InsertBeforeOp::InsertBeforeOp(TokenStreamRewriter *outerInstance_, size_t index_, const std::string& text_)
|
53
|
-
: RewriteOperation(outerInstance_, index_, text_), outerInstance(outerInstance_) {
|
54
|
-
}
|
55
|
-
|
56
|
-
size_t TokenStreamRewriter::InsertBeforeOp::execute(std::string *buf) {
|
57
|
-
buf->append(text);
|
58
|
-
if (outerInstance->tokens->get(index)->getType() != Token::EOF) {
|
59
|
-
buf->append(outerInstance->tokens->get(index)->getText());
|
60
|
-
}
|
61
|
-
return index + 1;
|
62
|
-
}
|
63
|
-
|
64
|
-
TokenStreamRewriter::ReplaceOp::ReplaceOp(TokenStreamRewriter *outerInstance_, size_t from, size_t to, const std::string& text)
|
65
|
-
: RewriteOperation(outerInstance_, from, text), outerInstance(outerInstance_) {
|
66
|
-
|
67
|
-
InitializeInstanceFields();
|
68
|
-
lastIndex = to;
|
69
|
-
}
|
70
|
-
|
71
|
-
size_t TokenStreamRewriter::ReplaceOp::execute(std::string *buf) {
|
72
|
-
buf->append(text);
|
73
|
-
return lastIndex + 1;
|
74
|
-
}
|
75
|
-
|
76
|
-
std::string TokenStreamRewriter::ReplaceOp::toString() {
|
77
|
-
if (text.empty()) {
|
78
|
-
return "<DeleteOp@" + outerInstance->tokens->get(index)->getText() + ".." + outerInstance->tokens->get(lastIndex)->getText() + ">";
|
79
|
-
}
|
80
|
-
return "<ReplaceOp@" + outerInstance->tokens->get(index)->getText() + ".." + outerInstance->tokens->get(lastIndex)->getText() + ":\"" + text + "\">";
|
81
|
-
}
|
82
|
-
|
83
|
-
void TokenStreamRewriter::ReplaceOp::InitializeInstanceFields() {
|
84
|
-
lastIndex = 0;
|
85
|
-
}
|
86
|
-
|
87
|
-
//------------------ TokenStreamRewriter -------------------------------------------------------------------------------
|
88
|
-
|
89
|
-
const std::string TokenStreamRewriter::DEFAULT_PROGRAM_NAME = "default";
|
90
|
-
|
91
|
-
TokenStreamRewriter::TokenStreamRewriter(TokenStream *tokens_) : tokens(tokens_) {
|
92
|
-
_programs[DEFAULT_PROGRAM_NAME].reserve(PROGRAM_INIT_SIZE);
|
93
|
-
}
|
94
|
-
|
95
|
-
TokenStreamRewriter::~TokenStreamRewriter() {
|
96
|
-
for (auto program : _programs) {
|
97
|
-
for (auto operation : program.second) {
|
98
|
-
delete operation;
|
99
|
-
}
|
100
|
-
}
|
101
|
-
}
|
102
|
-
|
103
|
-
TokenStream *TokenStreamRewriter::getTokenStream() {
|
104
|
-
return tokens;
|
105
|
-
}
|
106
|
-
|
107
|
-
void TokenStreamRewriter::rollback(size_t instructionIndex) {
|
108
|
-
rollback(DEFAULT_PROGRAM_NAME, instructionIndex);
|
109
|
-
}
|
110
|
-
|
111
|
-
void TokenStreamRewriter::rollback(const std::string &programName, size_t instructionIndex) {
|
112
|
-
std::vector<RewriteOperation*> is = _programs[programName];
|
113
|
-
if (is.size() > 0) {
|
114
|
-
_programs.insert({ programName, std::vector<RewriteOperation*>(is.begin() + MIN_TOKEN_INDEX, is.begin() + instructionIndex) });
|
115
|
-
}
|
116
|
-
}
|
117
|
-
|
118
|
-
void TokenStreamRewriter::deleteProgram() {
|
119
|
-
deleteProgram(DEFAULT_PROGRAM_NAME);
|
120
|
-
}
|
121
|
-
|
122
|
-
void TokenStreamRewriter::deleteProgram(const std::string &programName) {
|
123
|
-
rollback(programName, MIN_TOKEN_INDEX);
|
124
|
-
}
|
125
|
-
|
126
|
-
void TokenStreamRewriter::insertAfter(Token *t, const std::string& text) {
|
127
|
-
insertAfter(DEFAULT_PROGRAM_NAME, t, text);
|
128
|
-
}
|
129
|
-
|
130
|
-
void TokenStreamRewriter::insertAfter(size_t index, const std::string& text) {
|
131
|
-
insertAfter(DEFAULT_PROGRAM_NAME, index, text);
|
132
|
-
}
|
133
|
-
|
134
|
-
void TokenStreamRewriter::insertAfter(const std::string &programName, Token *t, const std::string& text) {
|
135
|
-
insertAfter(programName, t->getTokenIndex(), text);
|
136
|
-
}
|
137
|
-
|
138
|
-
void TokenStreamRewriter::insertAfter(const std::string &programName, size_t index, const std::string& text) {
|
139
|
-
// to insert after, just insert before next index (even if past end)
|
140
|
-
insertBefore(programName, index + 1, text);
|
141
|
-
}
|
142
|
-
|
143
|
-
void TokenStreamRewriter::insertBefore(Token *t, const std::string& text) {
|
144
|
-
insertBefore(DEFAULT_PROGRAM_NAME, t, text);
|
145
|
-
}
|
146
|
-
|
147
|
-
void TokenStreamRewriter::insertBefore(size_t index, const std::string& text) {
|
148
|
-
insertBefore(DEFAULT_PROGRAM_NAME, index, text);
|
149
|
-
}
|
150
|
-
|
151
|
-
void TokenStreamRewriter::insertBefore(const std::string &programName, Token *t, const std::string& text) {
|
152
|
-
insertBefore(programName, t->getTokenIndex(), text);
|
153
|
-
}
|
154
|
-
|
155
|
-
void TokenStreamRewriter::insertBefore(const std::string &programName, size_t index, const std::string& text) {
|
156
|
-
RewriteOperation *op = new InsertBeforeOp(this, index, text); /* mem-check: deleted in d-tor */
|
157
|
-
std::vector<RewriteOperation*> &rewrites = getProgram(programName);
|
158
|
-
op->instructionIndex = rewrites.size();
|
159
|
-
rewrites.push_back(op);
|
160
|
-
}
|
161
|
-
|
162
|
-
void TokenStreamRewriter::replace(size_t index, const std::string& text) {
|
163
|
-
replace(DEFAULT_PROGRAM_NAME, index, index, text);
|
164
|
-
}
|
165
|
-
|
166
|
-
void TokenStreamRewriter::replace(size_t from, size_t to, const std::string& text) {
|
167
|
-
replace(DEFAULT_PROGRAM_NAME, from, to, text);
|
168
|
-
}
|
169
|
-
|
170
|
-
void TokenStreamRewriter::replace(Token *indexT, const std::string& text) {
|
171
|
-
replace(DEFAULT_PROGRAM_NAME, indexT, indexT, text);
|
172
|
-
}
|
173
|
-
|
174
|
-
void TokenStreamRewriter::replace(Token *from, Token *to, const std::string& text) {
|
175
|
-
replace(DEFAULT_PROGRAM_NAME, from, to, text);
|
176
|
-
}
|
177
|
-
|
178
|
-
void TokenStreamRewriter::replace(const std::string &programName, size_t from, size_t to, const std::string& text) {
|
179
|
-
if (from > to || to >= tokens->size()) {
|
180
|
-
throw IllegalArgumentException("replace: range invalid: " + std::to_string(from) + ".." + std::to_string(to) +
|
181
|
-
"(size = " + std::to_string(tokens->size()) + ")");
|
182
|
-
}
|
183
|
-
RewriteOperation *op = new ReplaceOp(this, from, to, text); /* mem-check: deleted in d-tor */
|
184
|
-
std::vector<RewriteOperation*> &rewrites = getProgram(programName);
|
185
|
-
op->instructionIndex = rewrites.size();
|
186
|
-
rewrites.push_back(op);
|
187
|
-
}
|
188
|
-
|
189
|
-
void TokenStreamRewriter::replace(const std::string &programName, Token *from, Token *to, const std::string& text) {
|
190
|
-
replace(programName, from->getTokenIndex(), to->getTokenIndex(), text);
|
191
|
-
}
|
192
|
-
|
193
|
-
void TokenStreamRewriter::Delete(size_t index) {
|
194
|
-
Delete(DEFAULT_PROGRAM_NAME, index, index);
|
195
|
-
}
|
196
|
-
|
197
|
-
void TokenStreamRewriter::Delete(size_t from, size_t to) {
|
198
|
-
Delete(DEFAULT_PROGRAM_NAME, from, to);
|
199
|
-
}
|
200
|
-
|
201
|
-
void TokenStreamRewriter::Delete(Token *indexT) {
|
202
|
-
Delete(DEFAULT_PROGRAM_NAME, indexT, indexT);
|
203
|
-
}
|
204
|
-
|
205
|
-
void TokenStreamRewriter::Delete(Token *from, Token *to) {
|
206
|
-
Delete(DEFAULT_PROGRAM_NAME, from, to);
|
207
|
-
}
|
208
|
-
|
209
|
-
void TokenStreamRewriter::Delete(const std::string &programName, size_t from, size_t to) {
|
210
|
-
std::string nullString;
|
211
|
-
replace(programName, from, to, nullString);
|
212
|
-
}
|
213
|
-
|
214
|
-
void TokenStreamRewriter::Delete(const std::string &programName, Token *from, Token *to) {
|
215
|
-
std::string nullString;
|
216
|
-
replace(programName, from, to, nullString);
|
217
|
-
}
|
218
|
-
|
219
|
-
size_t TokenStreamRewriter::getLastRewriteTokenIndex() {
|
220
|
-
return getLastRewriteTokenIndex(DEFAULT_PROGRAM_NAME);
|
221
|
-
}
|
222
|
-
|
223
|
-
size_t TokenStreamRewriter::getLastRewriteTokenIndex(const std::string &programName) {
|
224
|
-
if (_lastRewriteTokenIndexes.find(programName) == _lastRewriteTokenIndexes.end()) {
|
225
|
-
return INVALID_INDEX;
|
226
|
-
}
|
227
|
-
return _lastRewriteTokenIndexes[programName];
|
228
|
-
}
|
229
|
-
|
230
|
-
void TokenStreamRewriter::setLastRewriteTokenIndex(const std::string &programName, size_t i) {
|
231
|
-
_lastRewriteTokenIndexes.insert({ programName, i });
|
232
|
-
}
|
233
|
-
|
234
|
-
std::vector<TokenStreamRewriter::RewriteOperation*>& TokenStreamRewriter::getProgram(const std::string &name) {
|
235
|
-
auto iterator = _programs.find(name);
|
236
|
-
if (iterator == _programs.end()) {
|
237
|
-
return initializeProgram(name);
|
238
|
-
}
|
239
|
-
return iterator->second;
|
240
|
-
}
|
241
|
-
|
242
|
-
std::vector<TokenStreamRewriter::RewriteOperation*>& TokenStreamRewriter::initializeProgram(const std::string &name) {
|
243
|
-
_programs[name].reserve(PROGRAM_INIT_SIZE);
|
244
|
-
return _programs[name];
|
245
|
-
}
|
246
|
-
|
247
|
-
std::string TokenStreamRewriter::getText() {
|
248
|
-
return getText(DEFAULT_PROGRAM_NAME, Interval(0UL, tokens->size() - 1));
|
249
|
-
}
|
250
|
-
|
251
|
-
std::string TokenStreamRewriter::getText(std::string programName) {
|
252
|
-
return getText(programName, Interval(0UL, tokens->size() - 1));
|
253
|
-
}
|
254
|
-
|
255
|
-
std::string TokenStreamRewriter::getText(const Interval &interval) {
|
256
|
-
return getText(DEFAULT_PROGRAM_NAME, interval);
|
257
|
-
}
|
258
|
-
|
259
|
-
std::string TokenStreamRewriter::getText(const std::string &programName, const Interval &interval) {
|
260
|
-
std::vector<TokenStreamRewriter::RewriteOperation*> &rewrites = _programs[programName];
|
261
|
-
size_t start = interval.a;
|
262
|
-
size_t stop = interval.b;
|
263
|
-
|
264
|
-
// ensure start/end are in range
|
265
|
-
if (stop > tokens->size() - 1) {
|
266
|
-
stop = tokens->size() - 1;
|
267
|
-
}
|
268
|
-
if (start == INVALID_INDEX) {
|
269
|
-
start = 0;
|
270
|
-
}
|
271
|
-
|
272
|
-
if (rewrites.empty() || rewrites.empty()) {
|
273
|
-
return tokens->getText(interval); // no instructions to execute
|
274
|
-
}
|
275
|
-
std::string buf;
|
276
|
-
|
277
|
-
// First, optimize instruction stream
|
278
|
-
std::unordered_map<size_t, TokenStreamRewriter::RewriteOperation*> indexToOp = reduceToSingleOperationPerIndex(rewrites);
|
279
|
-
|
280
|
-
// Walk buffer, executing instructions and emitting tokens
|
281
|
-
size_t i = start;
|
282
|
-
while (i <= stop && i < tokens->size()) {
|
283
|
-
RewriteOperation *op = indexToOp[i];
|
284
|
-
indexToOp.erase(i); // remove so any left have index size-1
|
285
|
-
Token *t = tokens->get(i);
|
286
|
-
if (op == nullptr) {
|
287
|
-
// no operation at that index, just dump token
|
288
|
-
if (t->getType() != Token::EOF) {
|
289
|
-
buf.append(t->getText());
|
290
|
-
}
|
291
|
-
i++; // move to next token
|
292
|
-
}
|
293
|
-
else {
|
294
|
-
i = op->execute(&buf); // execute operation and skip
|
295
|
-
}
|
296
|
-
}
|
297
|
-
|
298
|
-
// include stuff after end if it's last index in buffer
|
299
|
-
// So, if they did an insertAfter(lastValidIndex, "foo"), include
|
300
|
-
// foo if end==lastValidIndex.
|
301
|
-
if (stop == tokens->size() - 1) {
|
302
|
-
// Scan any remaining operations after last token
|
303
|
-
// should be included (they will be inserts).
|
304
|
-
for (auto op : indexToOp) {
|
305
|
-
if (op.second->index >= tokens->size() - 1) {
|
306
|
-
buf.append(op.second->text);
|
307
|
-
}
|
308
|
-
}
|
309
|
-
}
|
310
|
-
return buf;
|
311
|
-
}
|
312
|
-
|
313
|
-
std::unordered_map<size_t, TokenStreamRewriter::RewriteOperation*> TokenStreamRewriter::reduceToSingleOperationPerIndex(
|
314
|
-
std::vector<TokenStreamRewriter::RewriteOperation*> &rewrites) {
|
315
|
-
|
316
|
-
|
317
|
-
// WALK REPLACES
|
318
|
-
for (size_t i = 0; i < rewrites.size(); ++i) {
|
319
|
-
TokenStreamRewriter::RewriteOperation *op = rewrites[i];
|
320
|
-
ReplaceOp *rop = dynamic_cast<ReplaceOp *>(op);
|
321
|
-
if (rop == nullptr)
|
322
|
-
continue;
|
323
|
-
|
324
|
-
// Wipe prior inserts within range
|
325
|
-
std::vector<InsertBeforeOp *> inserts = getKindOfOps<InsertBeforeOp>(rewrites, i);
|
326
|
-
for (auto iop : inserts) {
|
327
|
-
if (iop->index == rop->index) {
|
328
|
-
// E.g., insert before 2, delete 2..2; update replace
|
329
|
-
// text to include insert before, kill insert
|
330
|
-
delete rewrites[iop->instructionIndex];
|
331
|
-
rewrites[iop->instructionIndex] = nullptr;
|
332
|
-
rop->text = iop->text + (!rop->text.empty() ? rop->text : "");
|
333
|
-
}
|
334
|
-
else if (iop->index > rop->index && iop->index <= rop->lastIndex) {
|
335
|
-
// delete insert as it's a no-op.
|
336
|
-
delete rewrites[iop->instructionIndex];
|
337
|
-
rewrites[iop->instructionIndex] = nullptr;
|
338
|
-
}
|
339
|
-
}
|
340
|
-
// Drop any prior replaces contained within
|
341
|
-
std::vector<ReplaceOp*> prevReplaces = getKindOfOps<ReplaceOp>(rewrites, i);
|
342
|
-
for (auto prevRop : prevReplaces) {
|
343
|
-
if (prevRop->index >= rop->index && prevRop->lastIndex <= rop->lastIndex) {
|
344
|
-
// delete replace as it's a no-op.
|
345
|
-
delete rewrites[prevRop->instructionIndex];
|
346
|
-
rewrites[prevRop->instructionIndex] = nullptr;
|
347
|
-
continue;
|
348
|
-
}
|
349
|
-
// throw exception unless disjoint or identical
|
350
|
-
bool disjoint = prevRop->lastIndex < rop->index || prevRop->index > rop->lastIndex;
|
351
|
-
// Delete special case of replace (text==null):
|
352
|
-
// D.i-j.u D.x-y.v | boundaries overlap combine to max(min)..max(right)
|
353
|
-
if (prevRop->text.empty() && rop->text.empty() && !disjoint) {
|
354
|
-
delete rewrites[prevRop->instructionIndex];
|
355
|
-
rewrites[prevRop->instructionIndex] = nullptr; // kill first delete
|
356
|
-
rop->index = std::min(prevRop->index, rop->index);
|
357
|
-
rop->lastIndex = std::max(prevRop->lastIndex, rop->lastIndex);
|
358
|
-
std::cout << "new rop " << rop << std::endl;
|
359
|
-
}
|
360
|
-
else if (!disjoint) {
|
361
|
-
throw IllegalArgumentException("replace op boundaries of " + rop->toString() +
|
362
|
-
" overlap with previous " + prevRop->toString());
|
363
|
-
}
|
364
|
-
}
|
365
|
-
}
|
366
|
-
|
367
|
-
// WALK INSERTS
|
368
|
-
for (size_t i = 0; i < rewrites.size(); i++) {
|
369
|
-
InsertBeforeOp *iop = dynamic_cast<InsertBeforeOp *>(rewrites[i]);
|
370
|
-
if (iop == nullptr)
|
371
|
-
continue;
|
372
|
-
|
373
|
-
// combine current insert with prior if any at same index
|
374
|
-
|
375
|
-
std::vector<InsertBeforeOp *> prevInserts = getKindOfOps<InsertBeforeOp>(rewrites, i);
|
376
|
-
for (auto prevIop : prevInserts) {
|
377
|
-
if (prevIop->index == iop->index) { // combine objects
|
378
|
-
// convert to strings...we're in process of toString'ing
|
379
|
-
// whole token buffer so no lazy eval issue with any templates
|
380
|
-
iop->text = catOpText(&iop->text, &prevIop->text);
|
381
|
-
// delete redundant prior insert
|
382
|
-
delete rewrites[prevIop->instructionIndex];
|
383
|
-
rewrites[prevIop->instructionIndex] = nullptr;
|
384
|
-
}
|
385
|
-
}
|
386
|
-
// look for replaces where iop.index is in range; error
|
387
|
-
std::vector<ReplaceOp*> prevReplaces = getKindOfOps<ReplaceOp>(rewrites, i);
|
388
|
-
for (auto rop : prevReplaces) {
|
389
|
-
if (iop->index == rop->index) {
|
390
|
-
rop->text = catOpText(&iop->text, &rop->text);
|
391
|
-
delete rewrites[i];
|
392
|
-
rewrites[i] = nullptr; // delete current insert
|
393
|
-
continue;
|
394
|
-
}
|
395
|
-
if (iop->index >= rop->index && iop->index <= rop->lastIndex) {
|
396
|
-
throw IllegalArgumentException("insert op " + iop->toString() + " within boundaries of previous " + rop->toString());
|
397
|
-
}
|
398
|
-
}
|
399
|
-
}
|
400
|
-
|
401
|
-
std::unordered_map<size_t, TokenStreamRewriter::RewriteOperation*> m;
|
402
|
-
for (TokenStreamRewriter::RewriteOperation *op : rewrites) {
|
403
|
-
if (op == nullptr) { // ignore deleted ops
|
404
|
-
continue;
|
405
|
-
}
|
406
|
-
if (m.count(op->index) > 0) {
|
407
|
-
throw RuntimeException("should only be one op per index");
|
408
|
-
}
|
409
|
-
m[op->index] = op;
|
410
|
-
}
|
411
|
-
|
412
|
-
return m;
|
413
|
-
}
|
414
|
-
|
415
|
-
std::string TokenStreamRewriter::catOpText(std::string *a, std::string *b) {
|
416
|
-
std::string x = "";
|
417
|
-
std::string y = "";
|
418
|
-
if (a != nullptr) {
|
419
|
-
x = *a;
|
420
|
-
}
|
421
|
-
if (b != nullptr) {
|
422
|
-
y = *b;
|
423
|
-
}
|
424
|
-
return x + y;
|
425
|
-
}
|