expressir 1.4.3 → 2.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (399) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/codeql.yml +2 -14
  3. data/.github/workflows/rake.yml +6 -364
  4. data/.github/workflows/release.yml +15 -178
  5. data/.github/workflows/stress.yml +1 -18
  6. data/.rubocop.yml +1 -0
  7. data/.rubocop_todo.yml +7 -0
  8. data/Gemfile +13 -0
  9. data/README.adoc +6 -19
  10. data/Rakefile +6 -7
  11. data/expressir.gemspec +23 -32
  12. data/expressir_wrapped.txt +23068 -0
  13. data/lib/expressir/cli.rb +1 -1
  14. data/lib/expressir/express/formatter.rb +661 -661
  15. data/lib/expressir/express/parser.rb +299 -33
  16. data/lib/expressir/express/visitor.rb +238 -133
  17. data/lib/expressir/model/declarations/interface_item.rb +1 -1
  18. data/lib/expressir/version.rb +1 -1
  19. metadata +15 -573
  20. data/.cross_rubies +0 -28
  21. data/.gitmodules +0 -6
  22. data/.yardopts +0 -11
  23. data/exe/generate-parser +0 -51
  24. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/CMakeLists.txt +0 -191
  25. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj +0 -652
  26. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj.filters +0 -948
  27. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2022.vcxproj +0 -652
  28. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2022.vcxproj.filters +0 -948
  29. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp-ios/Info.plist +0 -26
  30. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp-ios/antlrcpp_ios.h +0 -17
  31. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.pbxproj +0 -3040
  32. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  33. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  34. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4.xcscheme +0 -76
  35. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_ios.xcscheme +0 -76
  36. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/xcshareddata/xcschemes/antlr4_static.xcscheme +0 -76
  37. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.noarch.nuspec +0 -23
  38. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.noarch.targets +0 -8
  39. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.shared.nuspec +0 -30
  40. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.shared.props +0 -21
  41. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.shared.targets +0 -44
  42. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.static.nuspec +0 -29
  43. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/ANTLR4.Runtime.cpp.static.targets +0 -44
  44. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/antlr4.jpg +0 -0
  45. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/nuget/pack.cmd +0 -93
  46. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorListener.cpp +0 -10
  47. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorListener.h +0 -167
  48. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorStrategy.cpp +0 -10
  49. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRErrorStrategy.h +0 -121
  50. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.cpp +0 -23
  51. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.h +0 -30
  52. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.cpp +0 -180
  53. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.h +0 -79
  54. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/BailErrorStrategy.cpp +0 -61
  55. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/BailErrorStrategy.h +0 -59
  56. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/BaseErrorListener.cpp +0 -25
  57. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/BaseErrorListener.h +0 -36
  58. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/BufferedTokenStream.cpp +0 -414
  59. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/BufferedTokenStream.h +0 -200
  60. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CharStream.cpp +0 -11
  61. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CharStream.h +0 -37
  62. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.cpp +0 -193
  63. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.h +0 -158
  64. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.cpp +0 -39
  65. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenFactory.h +0 -74
  66. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenStream.cpp +0 -78
  67. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonTokenStream.h +0 -79
  68. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ConsoleErrorListener.cpp +0 -15
  69. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ConsoleErrorListener.h +0 -35
  70. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.cpp +0 -336
  71. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.h +0 -466
  72. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/DiagnosticErrorListener.cpp +0 -84
  73. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/DiagnosticErrorListener.h +0 -80
  74. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.cpp +0 -64
  75. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.h +0 -99
  76. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.cpp +0 -52
  77. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.h +0 -32
  78. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/FlatHashMap.h +0 -57
  79. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/FlatHashSet.h +0 -57
  80. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/InputMismatchException.cpp +0 -18
  81. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/InputMismatchException.h +0 -24
  82. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.cpp +0 -12
  83. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.h +0 -218
  84. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/InterpreterRuleContext.cpp +0 -19
  85. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/InterpreterRuleContext.h +0 -45
  86. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.cpp +0 -294
  87. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.h +0 -196
  88. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.cpp +0 -60
  89. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.h +0 -46
  90. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerNoViableAltException.cpp +0 -36
  91. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerNoViableAltException.h +0 -31
  92. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.cpp +0 -92
  93. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ListTokenSource.h +0 -88
  94. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/NoViableAltException.cpp +0 -46
  95. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/NoViableAltException.h +0 -42
  96. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.cpp +0 -670
  97. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.h +0 -461
  98. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.cpp +0 -294
  99. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.h +0 -173
  100. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.cpp +0 -138
  101. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.h +0 -147
  102. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.cpp +0 -53
  103. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/ProxyErrorListener.h +0 -38
  104. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.cpp +0 -65
  105. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.h +0 -98
  106. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.cpp +0 -157
  107. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.h +0 -160
  108. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.cpp +0 -144
  109. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.h +0 -141
  110. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContextWithAltNum.cpp +0 -27
  111. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContextWithAltNum.h +0 -32
  112. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.cpp +0 -54
  113. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.h +0 -155
  114. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.cpp +0 -9
  115. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.h +0 -92
  116. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenFactory.h +0 -30
  117. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.cpp +0 -9
  118. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenSource.h +0 -85
  119. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStream.cpp +0 -11
  120. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStream.h +0 -137
  121. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.cpp +0 -425
  122. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.h +0 -295
  123. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.cpp +0 -208
  124. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.h +0 -117
  125. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedTokenStream.cpp +0 -270
  126. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedTokenStream.h +0 -115
  127. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Version.h +0 -42
  128. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.cpp +0 -64
  129. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.h +0 -177
  130. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/WritableToken.cpp +0 -9
  131. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/WritableToken.h +0 -23
  132. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-common.h +0 -101
  133. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-runtime.h +0 -168
  134. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.cpp +0 -159
  135. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.h +0 -133
  136. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.cpp +0 -106
  137. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.h +0 -157
  138. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.cpp +0 -233
  139. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.h +0 -157
  140. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.cpp +0 -39
  141. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.h +0 -48
  142. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp +0 -628
  143. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.h +0 -32
  144. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.cpp +0 -33
  145. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.h +0 -71
  146. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.cpp +0 -56
  147. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.h +0 -139
  148. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNStateType.cpp +0 -33
  149. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNStateType.h +0 -36
  150. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNType.h +0 -20
  151. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.cpp +0 -29
  152. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.h +0 -35
  153. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AmbiguityInfo.cpp +0 -16
  154. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AmbiguityInfo.h +0 -68
  155. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.cpp +0 -129
  156. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.h +0 -51
  157. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.cpp +0 -27
  158. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.h +0 -33
  159. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.h +0 -24
  160. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.h +0 -23
  161. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.h +0 -26
  162. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.h +0 -30
  163. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.cpp +0 -14
  164. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ContextSensitivityInfo.h +0 -47
  165. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionEventInfo.cpp +0 -14
  166. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionEventInfo.h +0 -70
  167. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.cpp +0 -25
  168. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.h +0 -227
  169. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.cpp +0 -12
  170. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.h +0 -34
  171. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.cpp +0 -31
  172. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.h +0 -42
  173. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ErrorInfo.cpp +0 -15
  174. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ErrorInfo.h +0 -43
  175. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/HashUtils.h +0 -18
  176. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.cpp +0 -189
  177. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.h +0 -76
  178. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.cpp +0 -67
  179. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.h +0 -44
  180. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.cpp +0 -621
  181. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.h +0 -199
  182. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.cpp +0 -15
  183. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.h +0 -100
  184. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.cpp +0 -108
  185. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.h +0 -128
  186. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionType.h +0 -57
  187. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.cpp +0 -43
  188. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.h +0 -59
  189. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.cpp +0 -45
  190. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.h +0 -75
  191. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.cpp +0 -50
  192. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.h +0 -76
  193. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.cpp +0 -43
  194. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.h +0 -57
  195. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.cpp +0 -36
  196. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.h +0 -53
  197. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.cpp +0 -36
  198. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.h +0 -53
  199. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.cpp +0 -43
  200. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.h +0 -57
  201. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.cpp +0 -36
  202. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.h +0 -51
  203. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.cpp +0 -43
  204. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.h +0 -51
  205. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.cpp +0 -16
  206. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LookaheadEventInfo.h +0 -42
  207. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.h +0 -26
  208. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.cpp +0 -22
  209. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.h +0 -27
  210. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.cpp +0 -16
  211. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.h +0 -25
  212. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParseInfo.cpp +0 -102
  213. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParseInfo.h +0 -102
  214. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.cpp +0 -1413
  215. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.h +0 -911
  216. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulatorOptions.h +0 -50
  217. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.h +0 -29
  218. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.h +0 -25
  219. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.cpp +0 -23
  220. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.h +0 -35
  221. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.cpp +0 -17
  222. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.h +0 -62
  223. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.cpp +0 -24
  224. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.h +0 -50
  225. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.cpp +0 -601
  226. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.h +0 -225
  227. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextCache.cpp +0 -56
  228. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextCache.h +0 -63
  229. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextMergeCache.cpp +0 -167
  230. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextMergeCache.h +0 -101
  231. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextMergeCacheOptions.h +0 -71
  232. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextType.h +0 -21
  233. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.cpp +0 -202
  234. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.h +0 -436
  235. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.cpp +0 -179
  236. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.h +0 -60
  237. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.cpp +0 -26
  238. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.h +0 -31
  239. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.h +0 -26
  240. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.h +0 -27
  241. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.cpp +0 -33
  242. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.h +0 -42
  243. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.cpp +0 -418
  244. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.h +0 -237
  245. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContextType.h +0 -23
  246. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SerializedATNView.h +0 -101
  247. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.cpp +0 -28
  248. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.h +0 -38
  249. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.cpp +0 -79
  250. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.h +0 -43
  251. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.h +0 -24
  252. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.h +0 -37
  253. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.cpp +0 -19
  254. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.h +0 -25
  255. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.h +0 -24
  256. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.cpp +0 -36
  257. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.h +0 -65
  258. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TransitionType.cpp +0 -27
  259. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TransitionType.h +0 -33
  260. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.cpp +0 -21
  261. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.h +0 -27
  262. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.cpp +0 -115
  263. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.h +0 -96
  264. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.cpp +0 -60
  265. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.h +0 -32
  266. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.cpp +0 -59
  267. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.h +0 -154
  268. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.cpp +0 -17
  269. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.h +0 -22
  270. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/internal/Synchronization.cpp +0 -100
  271. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/internal/Synchronization.h +0 -154
  272. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.cpp +0 -124
  273. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.h +0 -33
  274. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.cpp +0 -61
  275. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.h +0 -84
  276. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.cpp +0 -508
  277. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.h +0 -190
  278. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.cpp +0 -120
  279. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.h +0 -102
  280. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Predicate.cpp +0 -4
  281. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Predicate.h +0 -21
  282. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.cpp +0 -8
  283. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.h +0 -16
  284. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.cpp +0 -43
  285. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.h +0 -149
  286. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/BitSet.h +0 -76
  287. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.cpp +0 -207
  288. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.h +0 -65
  289. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Casts.h +0 -34
  290. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Declarations.h +0 -161
  291. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.cpp +0 -38
  292. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.h +0 -16
  293. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Unicode.h +0 -28
  294. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Utf8.cpp +0 -242
  295. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Utf8.h +0 -54
  296. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/AbstractParseTreeVisitor.h +0 -129
  297. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.h +0 -24
  298. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.cpp +0 -54
  299. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.h +0 -43
  300. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.cpp +0 -66
  301. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.h +0 -53
  302. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.cpp +0 -12
  303. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.h +0 -111
  304. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeListener.cpp +0 -9
  305. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeListener.h +0 -39
  306. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeProperty.h +0 -50
  307. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeType.h +0 -22
  308. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.cpp +0 -9
  309. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.h +0 -57
  310. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.cpp +0 -48
  311. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.h +0 -55
  312. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.h +0 -40
  313. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.cpp +0 -54
  314. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.h +0 -32
  315. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.cpp +0 -241
  316. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/Trees.h +0 -78
  317. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/Chunk.cpp +0 -9
  318. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/Chunk.h +0 -44
  319. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.cpp +0 -69
  320. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreeMatch.h +0 -132
  321. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.cpp +0 -64
  322. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePattern.h +0 -105
  323. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.cpp +0 -370
  324. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.h +0 -185
  325. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.cpp +0 -77
  326. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/RuleTagToken.h +0 -117
  327. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TagChunk.cpp +0 -39
  328. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TagChunk.h +0 -86
  329. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TextChunk.cpp +0 -28
  330. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TextChunk.h +0 -51
  331. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.cpp +0 -36
  332. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/TokenTagToken.h +0 -80
  333. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.cpp +0 -154
  334. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPath.h +0 -86
  335. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathElement.cpp +0 -31
  336. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathElement.h +0 -40
  337. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.cpp +0 -180
  338. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.g4 +0 -64
  339. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.h +0 -53
  340. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.tokens +0 -12
  341. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.cpp +0 -13
  342. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexerErrorListener.h +0 -22
  343. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.cpp +0 -20
  344. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleAnywhereElement.h +0 -27
  345. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.cpp +0 -30
  346. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathRuleElement.h +0 -26
  347. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.cpp +0 -20
  348. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenAnywhereElement.h +0 -25
  349. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.cpp +0 -33
  350. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathTokenElement.h +0 -26
  351. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.cpp +0 -23
  352. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardAnywhereElement.h +0 -23
  353. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.cpp +0 -24
  354. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathWildcardElement.h +0 -23
  355. data/ext/express_parser/antlr4-upstream/runtime/Cpp/runtime/tests/Utf8Test.cpp +0 -110
  356. data/ext/express_parser/antlrgen/Express.interp +0 -532
  357. data/ext/express_parser/antlrgen/Express.tokens +0 -190
  358. data/ext/express_parser/antlrgen/ExpressBaseListener.cpp +0 -7
  359. data/ext/express_parser/antlrgen/ExpressBaseListener.h +0 -623
  360. data/ext/express_parser/antlrgen/ExpressBaseVisitor.cpp +0 -7
  361. data/ext/express_parser/antlrgen/ExpressBaseVisitor.h +0 -816
  362. data/ext/express_parser/antlrgen/ExpressLexer.cpp +0 -685
  363. data/ext/express_parser/antlrgen/ExpressLexer.h +0 -78
  364. data/ext/express_parser/antlrgen/ExpressLexer.interp +0 -534
  365. data/ext/express_parser/antlrgen/ExpressLexer.tokens +0 -190
  366. data/ext/express_parser/antlrgen/ExpressListener.cpp +0 -7
  367. data/ext/express_parser/antlrgen/ExpressListener.h +0 -616
  368. data/ext/express_parser/antlrgen/ExpressParser.cpp +0 -17591
  369. data/ext/express_parser/antlrgen/ExpressParser.h +0 -3692
  370. data/ext/express_parser/antlrgen/ExpressVisitor.cpp +0 -7
  371. data/ext/express_parser/antlrgen/ExpressVisitor.h +0 -422
  372. data/ext/express_parser/express_parser.cpp +0 -19405
  373. data/ext/express_parser/extconf.rb +0 -63
  374. data/rakelib/antlr4-native.rake +0 -173
  375. data/rakelib/cross-ruby.rake +0 -403
  376. data/spec/acceptance/version_spec.rb +0 -30
  377. data/spec/expressir/express/cache_spec.rb +0 -89
  378. data/spec/expressir/express/formatter_spec.rb +0 -171
  379. data/spec/expressir/express/parser_spec.rb +0 -141
  380. data/spec/expressir/model/model_element_spec.rb +0 -343
  381. data/spec/spec_helper.rb +0 -24
  382. data/spec/support/console_helper.rb +0 -29
  383. data/spec/syntax/multiple.exp +0 -23
  384. data/spec/syntax/multiple.yaml +0 -198
  385. data/spec/syntax/multiple_formatted.exp +0 -71
  386. data/spec/syntax/multiple_hyperlink_formatted.exp +0 -71
  387. data/spec/syntax/multiple_schema_head_hyperlink_formatted.exp +0 -13
  388. data/spec/syntax/remark.exp +0 -193
  389. data/spec/syntax/remark.yaml +0 -471
  390. data/spec/syntax/remark_formatted.exp +0 -228
  391. data/spec/syntax/single.exp +0 -4
  392. data/spec/syntax/single.yaml +0 -18
  393. data/spec/syntax/single_formatted.exp +0 -10
  394. data/spec/syntax/single_formatted.yaml +0 -36
  395. data/spec/syntax/syntax.exp +0 -333
  396. data/spec/syntax/syntax.yaml +0 -3509
  397. data/spec/syntax/syntax_formatted.exp +0 -902
  398. data/spec/syntax/syntax_hyperlink_formatted.exp +0 -902
  399. data/spec/syntax/syntax_schema_head_formatted.exp +0 -18
@@ -1,9 +1,3 @@
1
- begin
2
- RUBY_VERSION =~ /(\d+\.\d+)/
3
- require_relative "#{$1}/express_parser"
4
- rescue LoadError
5
- require_relative "express_parser"
6
- end
7
1
  require "expressir/model"
8
2
  require "set"
9
3
 
@@ -35,33 +29,155 @@ require 'objspace'
35
29
 
36
30
  module Expressir
37
31
  module Express
38
- class Visitor < ::ExpressParser::Visitor
32
+ class Visitor
33
+ class Ctx
34
+ attr_reader :name
35
+ attr_reader :data
36
+ attr_accessor :source_pos
37
+ def initialize(data,name)
38
+ @data = data
39
+ @name = name
40
+ end
41
+
42
+ def text
43
+ str.data.to_s
44
+ end
45
+
46
+ def method_missing(name,*args)
47
+ rulename = name.to_s.sub(/^visit_/,"").gsub(/_([a-z])/) { |m| m[1].upcase }.to_sym
48
+ self.class.define_method(name) { @data[rulename] }
49
+ self.send name, *args
50
+ end
51
+
52
+ def keys
53
+ @data.keys
54
+ end
55
+
56
+ def values
57
+ @data.values
58
+ end
59
+
60
+ def each(&block)
61
+ @data.values.each(&block)
62
+ end
63
+ end
64
+
65
+ class SimpleCtx
66
+ attr_reader :name
67
+ attr_reader :data
68
+ def initialize(data,name)
69
+ @data = data
70
+ @name = name
71
+ end
72
+
73
+ def text
74
+ @data.to_s
75
+ end
76
+ end
77
+
39
78
  REMARK_CHANNEL = 2
40
79
 
41
80
  private_constant :REMARK_CHANNEL
42
81
 
43
82
  # @param [::ExpressParser::TokenVector] Rice-wrapped std::vector<TokenProxy>
44
83
  # @param [Boolean] include_source attach original source code to model elements
45
- def initialize(tokens, include_source: nil)
46
- @tokens = tokens
84
+ def initialize(source, include_source: nil)
85
+ @source = source
47
86
  @include_source = include_source
48
87
 
49
- @attached_remark_tokens = ::Set.new
88
+ @attached_remark_tokens = Set.new
89
+
90
+ @visit_methods = Hash[
91
+ private_methods.grep(/^visit_/).map { |name|
92
+ rulename = name.to_s.sub(/^visit_/,"").gsub(/_([a-z])/) { $1.upcase }
93
+ [rulename.to_sym,name.to_sym]
94
+ }
95
+ ]
96
+ end
97
+
98
+ def to_ctx(ast,name=:unnamed)
99
+ case ast
100
+ when Hash
101
+ nodes = Hash[
102
+ ast.map { |k,v|
103
+ if k.match(/^listOf_(.*)$/)
104
+ itemkey = $1.to_sym
105
+ ary = (Array === v) ? v : [v]
106
+ [ itemkey, to_ctx(ary.select { |v| v[itemkey] }.map { |v| v.slice(itemkey) }) ]
107
+ else
108
+ [ k, to_ctx(v,k) ]
109
+ end
110
+ }
111
+ ]
112
+ Ctx.new nodes,name
113
+ when Array
114
+ ast.map { |v|
115
+ v.length == 1 or raise "element of array invalid (#{v.keys})"
116
+ to_ctx(v.values[0],v.keys[0])
117
+ }
118
+ when nil
119
+ nil
120
+ else
121
+ SimpleCtx.new ast,name
122
+ end
123
+ end
124
+
125
+ def get_source_pos(ctx)
126
+ ranges = nil
127
+ ranges = case ctx
128
+ when Ctx
129
+ ctx.source_pos and return ctx.source_pos # cache
130
+ ctx.values.map { |item| get_source_pos(item) }
131
+ when SimpleCtx
132
+ return nil unless ctx.data.respond_to? :offset
133
+ [ [ctx.data.offset, ctx.data.offset + ctx.data.length] ]
134
+ when Array
135
+ ctx.map { |item| get_source_pos(item) }
136
+ else
137
+ raise "unknown type in Ctx tree: #{ctx}"
138
+ end
139
+ source_pos = ranges.compact.reduce { |item,acc|
140
+ [ [item[0],acc[0]].min, [item[1],acc[1]].max ]
141
+ }
142
+ Ctx === ctx and ctx.source_pos = source_pos
143
+ source_pos
144
+ end
50
145
 
51
- super()
146
+ def get_source(ctx)
147
+ a,b = get_source_pos ctx
148
+ @source[a..b-1].strip
149
+ end
150
+
151
+ def visit_ast(ast,name)
152
+ ctx = to_ctx(ast,name)
153
+
154
+ visit ctx
52
155
  end
53
156
 
54
157
  def visit(ctx)
55
- node = super(ctx)
56
- if @include_source
57
- attach_source(ctx, node)
158
+ if Array === ctx
159
+ return ctx.map { |el| visit el }
160
+ end
161
+
162
+ node = ctx
163
+ if @visit_methods[ctx.name]
164
+ node = send(@visit_methods[ctx.name],ctx)
165
+ if @include_source && node.respond_to?(:source)
166
+ node.source = get_source ctx
167
+ end
58
168
  end
169
+
59
170
  attach_remarks(ctx, node)
60
171
  node
61
172
  end
62
173
 
174
+ ############################################3
63
175
  private
64
176
 
177
+ def visit_top(ctx)
178
+ visit ctx.syntax
179
+ end
180
+
65
181
  def visit_if(ctx, default = nil)
66
182
  if ctx
67
183
  visit(ctx)
@@ -86,35 +202,6 @@ module Expressir
86
202
  end
87
203
  end
88
204
 
89
- def get_tokens_source(tokens)
90
- if tokens.last.text == '<EOF>'
91
- tokens.pop
92
- end
93
-
94
- tokens.map{|x| x.text}.join('').force_encoding('UTF-8')
95
- end
96
-
97
- def get_tokens(ctx)
98
- start_index, stop_index = if ctx.is_a? ::ExpressParser::SyntaxContext
99
- [0, @tokens.size - 1]
100
- else
101
- [ctx.start.token_index, ctx.stop.token_index]
102
- end
103
-
104
- selected_tokens = []
105
- (start_index..stop_index).each do |i|
106
- selected_tokens << @tokens[i]
107
- end
108
- selected_tokens
109
- end
110
-
111
- def attach_source(ctx, node)
112
- if node.class.method_defined? :source
113
- tokens = get_tokens(ctx)
114
- node.source = get_tokens_source(tokens)
115
- end
116
- end
117
-
118
205
  def node_find(node, path)
119
206
  if node.is_a?(Enumerable)
120
207
  target_node = node.find { |item| item.find(path) }
@@ -153,19 +240,36 @@ module Expressir
153
240
  end
154
241
  end
155
242
 
243
+ def get_remarks(ctx,indent="")
244
+ case ctx
245
+ when Ctx
246
+ ctx.values.map { |item| get_remarks(item,indent+" ") }.inject([],:+)
247
+ when Array
248
+ x = ctx.map { |item| get_remarks(item,indent+" ") }.inject([],:+)
249
+ x
250
+ else
251
+ if [:tailRemark, :embeddedRemark].include?(ctx.name)
252
+ [ get_source_pos(ctx) ]
253
+ else
254
+ []
255
+ end
256
+ end
257
+ end
258
+
156
259
  def attach_remarks(ctx, node)
157
- remark_tokens = get_tokens(ctx)
158
- remark_tokens = remark_tokens.select{ |x| x.channel == REMARK_CHANNEL }
260
+
261
+ remark_tokens = get_remarks ctx
159
262
 
160
263
  # skip already attached remarks
161
- remark_tokens = remark_tokens.select{|x| !@attached_remark_tokens.include?(x.token_index)}
264
+ remark_tokens = remark_tokens.select{|x| !@attached_remark_tokens.include?(x)}
162
265
 
163
266
  # parse remarks, find remark targets
164
- tagged_remark_tokens = remark_tokens.map do |remark_token|
165
- _, remark_tag, remark_text = if remark_token.text.start_with?('--')
166
- remark_token.text.match(/^--"([^"]*)"(.*)$/).to_a
267
+ tagged_remark_tokens = remark_tokens.map do |span|
268
+ text = @source[span[0]..span[1]-1]
269
+ _, remark_tag, remark_text = if text.start_with?('--')
270
+ text.match(/^--"([^"]*)"(.*)$/).to_a
167
271
  else
168
- remark_token.text.match(/^\(\*"([^"]*)"(.*)\*\)$/m).to_a
272
+ text.match(/^\(\*"([^"]*)"(.*)\*\)$/m).to_a
169
273
  end
170
274
 
171
275
  if remark_tag
@@ -175,16 +279,16 @@ module Expressir
175
279
  remark_text = remark_text.strip.force_encoding('UTF-8')
176
280
  end
177
281
 
178
- [remark_token, remark_target, remark_text]
282
+ [span, remark_target, remark_text]
179
283
  end.select{|x| x[1]}
180
284
 
181
- tagged_remark_tokens.each do |remark_token, remark_target, remark_text|
285
+ tagged_remark_tokens.each do |span, remark_target, remark_text|
182
286
  # attach remark
183
287
  remark_target.remarks ||= []
184
288
  remark_target.remarks << remark_text
185
289
 
186
290
  # mark remark as attached, so that it is not attached again at higher nesting level
187
- @attached_remark_tokens << remark_token.token_index
291
+ @attached_remark_tokens << span
188
292
  end
189
293
  end
190
294
 
@@ -349,11 +453,11 @@ module Expressir
349
453
  end
350
454
 
351
455
  def visit_add_like_op(ctx)
352
- ctx__text = ctx.text
456
+ ctx__text = ctx.values[0].text
353
457
  ctx__ADDITION = ctx__text == '+'
354
458
  ctx__SUBTRACTION = ctx__text == '-'
355
- ctx__OR = ctx.OR
356
- ctx__XOR = ctx.XOR
459
+ ctx__OR = ctx.tOR
460
+ ctx__XOR = ctx.tXOR
357
461
 
358
462
  if ctx__ADDITION
359
463
  Model::Expressions::BinaryExpression::ADDITION
@@ -429,8 +533,8 @@ module Expressir
429
533
 
430
534
  def visit_array_type(ctx)
431
535
  ctx__bound_spec = ctx.bound_spec
432
- ctx__OPTIONAL = ctx.OPTIONAL
433
- ctx__UNIQUE = ctx.UNIQUE
536
+ ctx__OPTIONAL = ctx.tOPTIONAL
537
+ ctx__UNIQUE = ctx.tUNIQUE
434
538
  ctx__instantiable_type = ctx.instantiable_type
435
539
  ctx__bound_spec__bound1 = ctx__bound_spec&.bound1
436
540
  ctx__bound_spec__bound2 = ctx__bound_spec&.bound2
@@ -480,7 +584,7 @@ module Expressir
480
584
  end
481
585
 
482
586
  def visit_attribute_id(ctx)
483
- ctx__SimpleId = ctx.SimpleId
587
+ ctx__SimpleId = ctx.simpleId
484
588
 
485
589
  handle_simple_id(ctx__SimpleId)
486
590
  end
@@ -519,7 +623,7 @@ module Expressir
519
623
  def visit_binary_type(ctx)
520
624
  ctx__width_spec = ctx.width_spec
521
625
  ctx__width_spec__width = ctx__width_spec&.width
522
- ctx__width_spec__FIXED = ctx__width_spec&.FIXED
626
+ ctx__width_spec__FIXED = ctx__width_spec&.tFIXED
523
627
 
524
628
  width = visit_if(ctx__width_spec__width)
525
629
  fixed = ctx__width_spec__FIXED && true
@@ -551,7 +655,7 @@ module Expressir
551
655
  end
552
656
 
553
657
  def visit_built_in_constant(ctx)
554
- ctx__text = ctx.text
658
+ ctx__text = ctx.values[0].text
555
659
 
556
660
  id = ctx__text
557
661
 
@@ -561,7 +665,7 @@ module Expressir
561
665
  end
562
666
 
563
667
  def visit_built_in_function(ctx)
564
- ctx__text = ctx.text
668
+ ctx__text = ctx.values[0].text
565
669
 
566
670
  id = ctx__text
567
671
 
@@ -571,7 +675,7 @@ module Expressir
571
675
  end
572
676
 
573
677
  def visit_built_in_procedure(ctx)
574
- ctx__text = ctx.text
678
+ ctx__text = ctx.values[0].text
575
679
 
576
680
  id = ctx__text
577
681
 
@@ -664,7 +768,7 @@ module Expressir
664
768
  end
665
769
 
666
770
  def visit_constant_id(ctx)
667
- ctx__SimpleId = ctx.SimpleId
771
+ ctx__SimpleId = ctx.simpleId
668
772
 
669
773
  handle_simple_id(ctx__SimpleId)
670
774
  end
@@ -765,7 +869,7 @@ module Expressir
765
869
  ctx__entity_head = ctx.entity_head
766
870
  ctx__entity_body = ctx.entity_body
767
871
  ctx__entity_head__entity_id = ctx__entity_head&.entity_id
768
- ctx__entity_head__subsuper = ctx__entity_head&.subsuper
872
+ ctx__entity_head__subsuper = visit_if ctx__entity_head&.subsuper
769
873
  ctx__entity_head__subsuper__supertype_constraint = ctx__entity_head__subsuper&.supertype_constraint
770
874
  ctx__entity_head__subsuper__supertype_constraint__abstract_entity_declaration = ctx__entity_head__subsuper__supertype_constraint&.abstract_entity_declaration
771
875
  ctx__entity_head__subsuper__supertype_constraint__abstract_supertype_declaration = ctx__entity_head__subsuper__supertype_constraint&.abstract_supertype_declaration
@@ -805,7 +909,7 @@ module Expressir
805
909
  end
806
910
 
807
911
  def visit_entity_id(ctx)
808
- ctx__SimpleId = ctx.SimpleId
912
+ ctx__SimpleId = ctx.simpleId
809
913
 
810
914
  handle_simple_id(ctx__SimpleId)
811
915
  end
@@ -815,7 +919,7 @@ module Expressir
815
919
  end
816
920
 
817
921
  def visit_enumeration_id(ctx)
818
- ctx__SimpleId = ctx.SimpleId
922
+ ctx__SimpleId = ctx.simpleId
819
923
 
820
924
  handle_simple_id(ctx__SimpleId)
821
925
  end
@@ -854,7 +958,7 @@ module Expressir
854
958
  end
855
959
 
856
960
  def visit_enumeration_type(ctx)
857
- ctx__EXTENSIBLE = ctx.EXTENSIBLE
961
+ ctx__EXTENSIBLE = ctx.tEXTENSIBLE
858
962
  ctx__enumeration_items = ctx.enumeration_items
859
963
  ctx__enumeration_extension = ctx.enumeration_extension
860
964
  ctx__enumeration_extension__type_ref = ctx__enumeration_extension&.type_ref
@@ -877,7 +981,7 @@ module Expressir
877
981
 
878
982
  def visit_explicit_attr(ctx)
879
983
  ctx__attribute_decl = ctx.attribute_decl
880
- ctx__OPTIONAL = ctx.OPTIONAL
984
+ ctx__OPTIONAL = ctx.tOPTIONAL
881
985
  ctx__parameter_type = ctx.parameter_type
882
986
 
883
987
  attributes = visit_if_map(ctx__attribute_decl)
@@ -898,11 +1002,12 @@ module Expressir
898
1002
  def visit_expression(ctx)
899
1003
  ctx__simple_expression = ctx.simple_expression
900
1004
  ctx__rel_op_extended = ctx.rel_op_extended
1005
+ ctx__rhs = ctx.rhs
901
1006
 
902
- if ctx__simple_expression.length == 2
1007
+ if ctx__rhs
903
1008
  operator = visit_if(ctx__rel_op_extended)
904
- operand1 = visit_if(ctx__simple_expression[0])
905
- operand2 = visit_if(ctx__simple_expression[1])
1009
+ operand1 = visit_if(ctx__simple_expression)
1010
+ operand2 = visit_if(ctx__rhs.values[0])
906
1011
 
907
1012
  Model::Expressions::BinaryExpression.new(
908
1013
  operator: operator,
@@ -910,27 +1015,26 @@ module Expressir
910
1015
  operand2: operand2
911
1016
  )
912
1017
  else
913
- visit_if(ctx__simple_expression[0])
1018
+ visit_if(ctx__simple_expression)
914
1019
  end
915
1020
  end
916
1021
 
917
1022
  def visit_factor(ctx)
918
1023
  ctx__simple_factor = ctx.simple_factor
1024
+ ctx__rhs = ctx.rhs
919
1025
 
920
- if ctx__simple_factor.length == 2
1026
+ if ctx__rhs
921
1027
  operator = Model::Expressions::BinaryExpression::EXPONENTIATION
922
- operand1 = visit(ctx__simple_factor[0])
923
- operand2 = visit(ctx__simple_factor[1])
1028
+ operand1 = visit(ctx__simple_factor)
1029
+ operand2 = visit(ctx__rhs.simple_factor)
924
1030
 
925
1031
  Model::Expressions::BinaryExpression.new(
926
1032
  operator: operator,
927
1033
  operand1: operand1,
928
1034
  operand2: operand2
929
1035
  )
930
- elsif ctx__simple_factor.length == 1
931
- visit_if(ctx__simple_factor[0])
932
1036
  else
933
- raise 'Invalid state'
1037
+ visit_if(ctx__simple_factor)
934
1038
  end
935
1039
  end
936
1040
 
@@ -1007,7 +1111,7 @@ module Expressir
1007
1111
  end
1008
1112
 
1009
1113
  def visit_function_id(ctx)
1010
- ctx__SimpleId = ctx.SimpleId
1114
+ ctx__SimpleId = ctx.simpleId
1011
1115
 
1012
1116
  handle_simple_id(ctx__SimpleId)
1013
1117
  end
@@ -1032,8 +1136,8 @@ module Expressir
1032
1136
 
1033
1137
  def visit_general_array_type(ctx)
1034
1138
  ctx__bound_spec = ctx.bound_spec
1035
- ctx__OPTIONAL = ctx.OPTIONAL
1036
- ctx__UNIQUE = ctx.UNIQUE
1139
+ ctx__OPTIONAL = ctx.tOPTIONAL
1140
+ ctx__UNIQUE = ctx.tUNIQUE
1037
1141
  ctx__parameter_type = ctx.parameter_type
1038
1142
  ctx__bound_spec__bound1 = ctx__bound_spec&.bound1
1039
1143
  ctx__bound_spec__bound2 = ctx__bound_spec&.bound2
@@ -1072,7 +1176,7 @@ module Expressir
1072
1176
 
1073
1177
  def visit_general_list_type(ctx)
1074
1178
  ctx__bound_spec = ctx.bound_spec
1075
- ctx__UNIQUE = ctx.UNIQUE
1179
+ ctx__UNIQUE = ctx.tUNIQUE
1076
1180
  ctx__parameter_type = ctx.parameter_type
1077
1181
  ctx__bound_spec__bound1 = ctx__bound_spec&.bound1
1078
1182
  ctx__bound_spec__bound2 = ctx__bound_spec&.bound2
@@ -1242,13 +1346,14 @@ module Expressir
1242
1346
  def visit_interval(ctx)
1243
1347
  ctx__interval_low = ctx.interval_low
1244
1348
  ctx__interval_op = ctx.interval_op
1349
+ ctx__interval_op2 = ctx.interval_op2.interval_op
1245
1350
  ctx__interval_item = ctx.interval_item
1246
1351
  ctx__interval_high = ctx.interval_high
1247
1352
 
1248
1353
  low = visit_if(ctx__interval_low)
1249
- operator1 = visit_if(ctx__interval_op[0])
1354
+ operator1 = visit_if(ctx__interval_op)
1250
1355
  item = visit_if(ctx__interval_item)
1251
- operator2 = visit_if(ctx__interval_op[1])
1356
+ operator2 = visit_if(ctx__interval_op2)
1252
1357
  high = visit_if(ctx__interval_high)
1253
1358
 
1254
1359
  Model::Expressions::Interval.new(
@@ -1279,7 +1384,7 @@ module Expressir
1279
1384
  end
1280
1385
 
1281
1386
  def visit_interval_op(ctx)
1282
- ctx__text = ctx.text
1387
+ ctx__text = ctx.values[0].text
1283
1388
  ctx__LESS_THAN = ctx__text == '<'
1284
1389
  ctx__LESS_THAN_OR_EQUAL = ctx__text == '<='
1285
1390
 
@@ -1322,8 +1427,8 @@ module Expressir
1322
1427
  end
1323
1428
 
1324
1429
  def visit_inverse_attr_type(ctx)
1325
- ctx__SET = ctx.SET
1326
- ctx__BAG = ctx.BAG
1430
+ ctx__SET = ctx.tSET
1431
+ ctx__BAG = ctx.tBAG
1327
1432
  ctx__bound_spec = ctx.bound_spec
1328
1433
  ctx__entity_ref = ctx.entity_ref
1329
1434
  ctx__bound_spec__bound1 = ctx__bound_spec&.bound1
@@ -1362,7 +1467,7 @@ module Expressir
1362
1467
 
1363
1468
  def visit_list_type(ctx)
1364
1469
  ctx__bound_spec = ctx.bound_spec
1365
- ctx__UNIQUE = ctx.UNIQUE
1470
+ ctx__UNIQUE = ctx.tUNIQUE
1366
1471
  ctx__instantiable_type = ctx.instantiable_type
1367
1472
  ctx__bound_spec__bound1 = ctx__bound_spec&.bound1
1368
1473
  ctx__bound_spec__bound2 = ctx__bound_spec&.bound2
@@ -1381,10 +1486,10 @@ module Expressir
1381
1486
  end
1382
1487
 
1383
1488
  def visit_literal(ctx)
1384
- ctx__BinaryLiteral = ctx.BinaryLiteral
1385
- ctx__IntegerLiteral = ctx.IntegerLiteral
1489
+ ctx__BinaryLiteral = ctx.binary_literal
1490
+ ctx__IntegerLiteral = ctx.integerLiteral
1386
1491
  ctx__logical_literal = ctx.logical_literal
1387
- ctx__RealLiteral = ctx.RealLiteral
1492
+ ctx__RealLiteral = ctx.real_literal
1388
1493
  ctx__string_literal = ctx.string_literal
1389
1494
 
1390
1495
  if ctx__BinaryLiteral
@@ -1433,9 +1538,9 @@ module Expressir
1433
1538
  end
1434
1539
 
1435
1540
  def visit_logical_literal(ctx)
1436
- ctx__TRUE = ctx.TRUE
1437
- ctx__FALSE = ctx.FALSE
1438
- ctx__UNKNOWN = ctx.UNKNOWN
1541
+ ctx__TRUE = ctx.tTRUE
1542
+ ctx__FALSE = ctx.tFALSE
1543
+ ctx__UNKNOWN = ctx.tUNKNOWN
1439
1544
 
1440
1545
  value = if ctx__TRUE
1441
1546
  Model::Literals::Logical::TRUE
@@ -1457,12 +1562,12 @@ module Expressir
1457
1562
  end
1458
1563
 
1459
1564
  def visit_multiplication_like_op(ctx)
1460
- ctx__text = ctx.text
1565
+ ctx__text = ctx.values[0].text
1461
1566
  ctx__MULTIPLICATION = ctx__text == '*'
1462
1567
  ctx__REAL_DIVISION = ctx__text == '/'
1463
- ctx__INTEGER_DIVISION = ctx.DIV
1464
- ctx__MODULO = ctx.MOD
1465
- ctx__AND = ctx.AND
1568
+ ctx__INTEGER_DIVISION = ctx.tDIV
1569
+ ctx__MODULO = ctx.tMOD
1570
+ ctx__AND = ctx.tAND
1466
1571
  ctx__COMBINE = ctx__text == '||'
1467
1572
 
1468
1573
  if ctx__MULTIPLICATION
@@ -1534,7 +1639,7 @@ module Expressir
1534
1639
  end
1535
1640
 
1536
1641
  def visit_parameter_id(ctx)
1537
- ctx__SimpleId = ctx.SimpleId
1642
+ ctx__SimpleId = ctx.simpleId
1538
1643
 
1539
1644
  handle_simple_id(ctx__SimpleId)
1540
1645
  end
@@ -1629,11 +1734,11 @@ module Expressir
1629
1734
 
1630
1735
  def visit_procedure_head_parameter(ctx)
1631
1736
  ctx__formal_parameter = ctx.formal_parameter
1632
- ctx__VAR = ctx.VAR
1737
+ ctx__VAR = ctx.tVAR
1633
1738
 
1634
1739
  parameters = visit(ctx__formal_parameter)
1635
1740
 
1636
- if ctx.VAR
1741
+ if ctx.tVAR
1637
1742
  parameters.map do |parameter|
1638
1743
  Model::Declarations::Parameter.new(
1639
1744
  id: parameter.id,
@@ -1647,7 +1752,7 @@ module Expressir
1647
1752
  end
1648
1753
 
1649
1754
  def visit_procedure_id(ctx)
1650
- ctx__SimpleId = ctx.SimpleId
1755
+ ctx__SimpleId = ctx.simpleId
1651
1756
 
1652
1757
  handle_simple_id(ctx__SimpleId)
1653
1758
  end
@@ -1741,7 +1846,7 @@ module Expressir
1741
1846
  end
1742
1847
 
1743
1848
  def visit_rel_op(ctx)
1744
- ctx__text = ctx.text
1849
+ ctx__text = ctx.values[0].text
1745
1850
  ctx__LESS_THAN = ctx__text == '<'
1746
1851
  ctx__GREATER_THAN = ctx__text == '>'
1747
1852
  ctx__LESS_THAN_OR_EQUAL = ctx__text == '<='
@@ -1774,8 +1879,8 @@ module Expressir
1774
1879
 
1775
1880
  def visit_rel_op_extended(ctx)
1776
1881
  ctx__rel_op = ctx.rel_op
1777
- ctx__IN = ctx.IN
1778
- ctx__LIKE = ctx.LIKE
1882
+ ctx__IN = ctx.tIN
1883
+ ctx__LIKE = ctx.tLIKE
1779
1884
 
1780
1885
  if ctx__rel_op
1781
1886
  visit(ctx__rel_op)
@@ -1799,11 +1904,11 @@ module Expressir
1799
1904
  end
1800
1905
 
1801
1906
  def visit_repeat_control(ctx)
1802
- raise 'Invalid state'
1907
+ (SimpleCtx === ctx) ? to_ctx({},:repeatControl) : ctx
1803
1908
  end
1804
1909
 
1805
1910
  def visit_repeat_stmt(ctx)
1806
- ctx__repeat_control = ctx.repeat_control
1911
+ ctx__repeat_control = visit ctx.repeat_control
1807
1912
  ctx__stmt = ctx.stmt
1808
1913
  ctx__repeat_control__increment_control = ctx__repeat_control&.increment_control
1809
1914
  ctx__repeat_control__increment_control__variable_id = ctx__repeat_control__increment_control&.variable_id
@@ -1915,13 +2020,13 @@ module Expressir
1915
2020
  end
1916
2021
 
1917
2022
  def visit_rule_id(ctx)
1918
- ctx__SimpleId = ctx.SimpleId
2023
+ ctx__SimpleId = ctx.simpleId
1919
2024
 
1920
2025
  handle_simple_id(ctx__SimpleId)
1921
2026
  end
1922
2027
 
1923
2028
  def visit_rule_label_id(ctx)
1924
- ctx__SimpleId = ctx.SimpleId
2029
+ ctx__SimpleId = ctx.simpleId
1925
2030
 
1926
2031
  handle_simple_id(ctx__SimpleId)
1927
2032
  end
@@ -1972,7 +2077,7 @@ module Expressir
1972
2077
  end
1973
2078
 
1974
2079
  def visit_schema_id(ctx)
1975
- ctx__SimpleId = ctx.SimpleId
2080
+ ctx__SimpleId = ctx.simpleId
1976
2081
 
1977
2082
  handle_simple_id(ctx__SimpleId)
1978
2083
  end
@@ -2026,8 +2131,8 @@ module Expressir
2026
2131
  end
2027
2132
 
2028
2133
  def visit_select_type(ctx)
2029
- ctx__EXTENSIBLE = ctx.EXTENSIBLE
2030
- ctx__GENERIC_ENTITY = ctx.GENERIC_ENTITY
2134
+ ctx__EXTENSIBLE = ctx.tEXTENSIBLE
2135
+ ctx__GENERIC_ENTITY = ctx.tGENERIC_ENTITY
2031
2136
  ctx__select_list = ctx.select_list
2032
2137
  ctx__select_extension = ctx.select_extension
2033
2138
  ctx__select_extension__type_ref = ctx.select_extension&.type_ref
@@ -2064,8 +2169,8 @@ module Expressir
2064
2169
  end
2065
2170
 
2066
2171
  def visit_simple_expression(ctx)
2067
- ctx__term = ctx.term
2068
- ctx__add_like_op = ctx.add_like_op
2172
+ ctx__term = [ctx.term] + ctx.rhs.map { |item| item.term }
2173
+ ctx__add_like_op = ctx.rhs.map { |item| item.operator.values[0] }
2069
2174
 
2070
2175
  if ctx__term
2071
2176
  if ctx__term.length >= 2
@@ -2150,8 +2255,8 @@ module Expressir
2150
2255
  end
2151
2256
 
2152
2257
  def visit_string_literal(ctx)
2153
- ctx__SimpleStringLiteral = ctx.SimpleStringLiteral
2154
- ctx__EncodedStringLiteral = ctx.EncodedStringLiteral
2258
+ ctx__SimpleStringLiteral = ctx.simpleStringLiteral
2259
+ ctx__EncodedStringLiteral = ctx.encodedStringLiteral
2155
2260
 
2156
2261
  if ctx__SimpleStringLiteral
2157
2262
  handle_simple_string_literal(ctx__SimpleStringLiteral)
@@ -2165,7 +2270,7 @@ module Expressir
2165
2270
  def visit_string_type(ctx)
2166
2271
  ctx__width_spec = ctx.width_spec
2167
2272
  ctx__width_spec__width = ctx__width_spec&.width
2168
- ctx__width_spec__FIXED = ctx__width_spec&.FIXED
2273
+ ctx__width_spec__FIXED = ctx__width_spec&.tFIXED
2169
2274
 
2170
2275
  width = visit_if(ctx__width_spec__width)
2171
2276
  fixed = ctx__width_spec__FIXED && true
@@ -2177,7 +2282,7 @@ module Expressir
2177
2282
  end
2178
2283
 
2179
2284
  def visit_subsuper(ctx)
2180
- raise 'Invalid state'
2285
+ (SimpleCtx === ctx) ? to_ctx({},:subsuper) : ctx
2181
2286
  end
2182
2287
 
2183
2288
  def visit_subtype_constraint(ctx)
@@ -2187,12 +2292,12 @@ module Expressir
2187
2292
  end
2188
2293
 
2189
2294
  def visit_subtype_constraint_body(ctx)
2190
- raise 'Invalid state'
2295
+ (SimpleCtx === ctx) ? to_ctx({},:subtypeConstraintBody) : ctx
2191
2296
  end
2192
2297
 
2193
2298
  def visit_subtype_constraint_decl(ctx)
2194
2299
  ctx__subtype_constraint_head = ctx.subtype_constraint_head
2195
- ctx__subtype_constraint_body = ctx.subtype_constraint_body
2300
+ ctx__subtype_constraint_body = visit ctx.subtype_constraint_body
2196
2301
  ctx__subtype_constraint_head__subtype_constraint_id = ctx__subtype_constraint_head&.subtype_constraint_id
2197
2302
  ctx__subtype_constraint_head__entity_ref = ctx__subtype_constraint_head&.entity_ref
2198
2303
  ctx__subtype_constraint_body__abstract_supertype = ctx__subtype_constraint_body&.abstract_supertype
@@ -2219,7 +2324,7 @@ module Expressir
2219
2324
  end
2220
2325
 
2221
2326
  def visit_subtype_constraint_id(ctx)
2222
- ctx__SimpleId = ctx.SimpleId
2327
+ ctx__SimpleId = ctx.simpleId
2223
2328
 
2224
2329
  handle_simple_id(ctx__SimpleId)
2225
2330
  end
@@ -2235,8 +2340,8 @@ module Expressir
2235
2340
  end
2236
2341
 
2237
2342
  def visit_supertype_expression(ctx)
2238
- ctx__supertype_factor = ctx.supertype_factor
2239
- ctx__ANDOR = ctx.ANDOR
2343
+ ctx__supertype_factor = [ctx.supertype_factor]+ctx.rhs.map { |item| item.supertype_factor }
2344
+ ctx__ANDOR = ctx.rhs.map { |item| item.operator.values[0] }
2240
2345
 
2241
2346
  if ctx__supertype_factor
2242
2347
  if ctx__supertype_factor.length >= 2
@@ -2257,8 +2362,8 @@ module Expressir
2257
2362
  end
2258
2363
 
2259
2364
  def visit_supertype_factor(ctx)
2260
- ctx__supertype_term = ctx.supertype_term
2261
- ctx__AND = ctx.AND
2365
+ ctx__supertype_term = [ctx.supertype_term] + ctx.rhs.map { |item| item.supertype_term }
2366
+ ctx__AND = ctx.rhs.map { |item| item.operator.values[0] }
2262
2367
 
2263
2368
  if ctx__supertype_term
2264
2369
  if ctx__supertype_term.length >= 2
@@ -2303,8 +2408,8 @@ module Expressir
2303
2408
  end
2304
2409
 
2305
2410
  def visit_term(ctx)
2306
- ctx__factor = ctx.factor
2307
- ctx__multiplication_like_op = ctx.multiplication_like_op
2411
+ ctx__factor = [ctx.factor] + ctx.rhs.map { |item| item.factor }
2412
+ ctx__multiplication_like_op = ctx.rhs.map { |item| item.multiplication_like_op }
2308
2413
 
2309
2414
  if ctx__factor
2310
2415
  if ctx__factor.length >= 2
@@ -2347,7 +2452,7 @@ module Expressir
2347
2452
  end
2348
2453
 
2349
2454
  def visit_type_id(ctx)
2350
- ctx__SimpleId = ctx.SimpleId
2455
+ ctx__SimpleId = ctx.simpleId
2351
2456
 
2352
2457
  handle_simple_id(ctx__SimpleId)
2353
2458
  end
@@ -2360,16 +2465,16 @@ module Expressir
2360
2465
  end
2361
2466
 
2362
2467
  def visit_type_label_id(ctx)
2363
- ctx__SimpleId = ctx.SimpleId
2468
+ ctx__SimpleId = ctx.simpleId
2364
2469
 
2365
2470
  handle_simple_id(ctx__SimpleId)
2366
2471
  end
2367
2472
 
2368
2473
  def visit_unary_op(ctx)
2369
- ctx__text = ctx.text
2474
+ ctx__text = ctx.values[0].text
2370
2475
  ctx__PLUS = ctx__text == '+'
2371
2476
  ctx__MINUS = ctx__text == '-'
2372
- ctx__NOT = ctx.NOT
2477
+ ctx__NOT = ctx.tNOT
2373
2478
 
2374
2479
  if ctx__PLUS
2375
2480
  Model::Expressions::UnaryExpression::PLUS
@@ -2429,7 +2534,7 @@ module Expressir
2429
2534
  end
2430
2535
 
2431
2536
  def visit_variable_id(ctx)
2432
- ctx__SimpleId = ctx.SimpleId
2537
+ ctx__SimpleId = ctx.simpleId
2433
2538
 
2434
2539
  handle_simple_id(ctx__SimpleId)
2435
2540
  end