expressir 1.4.3 → 2.0.0

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.
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,23 +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 "Token.h"
9
-
10
- namespace antlr4 {
11
-
12
- class ANTLR4CPP_PUBLIC WritableToken : public Token {
13
- public:
14
- virtual ~WritableToken();
15
- virtual void setText(const std::string &text) = 0;
16
- virtual void setType(size_t ttype) = 0;
17
- virtual void setLine(size_t line) = 0;
18
- virtual void setCharPositionInLine(size_t pos) = 0;
19
- virtual void setChannel(size_t channel) = 0;
20
- virtual void setTokenIndex(size_t index) = 0;
21
- };
22
-
23
- } // namespace antlr4
@@ -1,101 +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 <algorithm>
9
- #include <any>
10
- #include <atomic>
11
- #include <bitset>
12
- #include <cassert>
13
- #include <climits>
14
- #include <cstddef>
15
- #include <cstdint>
16
- #include <cstdlib>
17
- #include <exception>
18
- #include <fstream>
19
- #include <iostream>
20
- #include <iterator>
21
- #include <limits>
22
- #include <map>
23
- #include <memory>
24
- #include <set>
25
- #include <sstream>
26
- #include <stack>
27
- #include <string>
28
- #include <string_view>
29
- #include <typeinfo>
30
- #include <type_traits>
31
- #include <unordered_map>
32
- #include <unordered_set>
33
- #include <utility>
34
- #include <vector>
35
-
36
- // Defines for the Guid class and other platform dependent stuff.
37
- #ifdef _WIN32
38
- #ifdef _MSC_VER
39
- #pragma warning (disable: 4250) // Class inherits by dominance.
40
- #pragma warning (disable: 4512) // assignment operator could not be generated
41
-
42
- #if _MSC_VER < 1900
43
- // Before VS 2015 code like "while (true)" will create a (useless) warning in level 4.
44
- #pragma warning (disable: 4127) // conditional expression is constant
45
- #endif
46
- #endif
47
-
48
- #ifdef _WIN64
49
- typedef __int64 ssize_t;
50
- #else
51
- typedef __int32 ssize_t;
52
- #endif
53
-
54
- #ifdef ANTLR4CPP_EXPORTS
55
- #define ANTLR4CPP_PUBLIC __declspec(dllexport)
56
- #else
57
- #ifdef ANTLR4CPP_STATIC
58
- #define ANTLR4CPP_PUBLIC
59
- #else
60
- #define ANTLR4CPP_PUBLIC __declspec(dllimport)
61
- #endif
62
- #endif
63
-
64
- #elif defined(__APPLE__)
65
- #if __GNUC__ >= 4
66
- #define ANTLR4CPP_PUBLIC __attribute__ ((visibility ("default")))
67
- #else
68
- #define ANTLR4CPP_PUBLIC
69
- #endif
70
- #else
71
- #if __GNUC__ >= 6
72
- #define ANTLR4CPP_PUBLIC __attribute__ ((visibility ("default")))
73
- #else
74
- #define ANTLR4CPP_PUBLIC
75
- #endif
76
- #endif
77
-
78
- #ifdef __has_builtin
79
- #define ANTLR4CPP_HAVE_BUILTIN(x) __has_builtin(x)
80
- #else
81
- #define ANTLR4CPP_HAVE_BUILTIN(x) 0
82
- #endif
83
-
84
- #define ANTLR4CPP_INTERNAL_STRINGIFY(x) #x
85
- #define ANTLR4CPP_STRINGIFY(x) ANTLR4CPP_INTERNAL_STRINGIFY(x)
86
-
87
- // We use everything from the C++ standard library by default.
88
- #ifndef ANTLR4CPP_USING_ABSEIL
89
- #define ANTLR4CPP_USING_ABSEIL 0
90
- #endif
91
-
92
- #include "support/Declarations.h"
93
-
94
- // We have to undefine this symbol as ANTLR will use this name for own members and even
95
- // generated functions. Because EOF is a global macro we cannot use e.g. a namespace scope to disambiguate.
96
- #ifdef EOF
97
- #undef EOF
98
- #endif
99
-
100
- #define INVALID_INDEX std::numeric_limits<size_t>::max()
101
- template<class T> using Ref = std::shared_ptr<T>;
@@ -1,168 +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
- // This is the umbrella header for all ANTLR4 C++ runtime headers.
9
-
10
- #include "antlr4-common.h"
11
-
12
- #include "ANTLRErrorListener.h"
13
- #include "ANTLRErrorStrategy.h"
14
- #include "ANTLRFileStream.h"
15
- #include "ANTLRInputStream.h"
16
- #include "BailErrorStrategy.h"
17
- #include "BaseErrorListener.h"
18
- #include "BufferedTokenStream.h"
19
- #include "CharStream.h"
20
- #include "CommonToken.h"
21
- #include "CommonTokenFactory.h"
22
- #include "CommonTokenStream.h"
23
- #include "ConsoleErrorListener.h"
24
- #include "DefaultErrorStrategy.h"
25
- #include "DiagnosticErrorListener.h"
26
- #include "Exceptions.h"
27
- #include "FailedPredicateException.h"
28
- #include "InputMismatchException.h"
29
- #include "IntStream.h"
30
- #include "InterpreterRuleContext.h"
31
- #include "Lexer.h"
32
- #include "LexerInterpreter.h"
33
- #include "LexerNoViableAltException.h"
34
- #include "ListTokenSource.h"
35
- #include "NoViableAltException.h"
36
- #include "Parser.h"
37
- #include "ParserInterpreter.h"
38
- #include "ParserRuleContext.h"
39
- #include "ProxyErrorListener.h"
40
- #include "RecognitionException.h"
41
- #include "Recognizer.h"
42
- #include "RuleContext.h"
43
- #include "RuleContextWithAltNum.h"
44
- #include "RuntimeMetaData.h"
45
- #include "Token.h"
46
- #include "TokenFactory.h"
47
- #include "TokenSource.h"
48
- #include "TokenStream.h"
49
- #include "TokenStreamRewriter.h"
50
- #include "UnbufferedCharStream.h"
51
- #include "UnbufferedTokenStream.h"
52
- #include "Version.h"
53
- #include "Vocabulary.h"
54
- #include "Vocabulary.h"
55
- #include "WritableToken.h"
56
- #include "atn/ATN.h"
57
- #include "atn/ATNConfig.h"
58
- #include "atn/ATNConfigSet.h"
59
- #include "atn/ATNDeserializationOptions.h"
60
- #include "atn/ATNDeserializer.h"
61
- #include "atn/ATNSimulator.h"
62
- #include "atn/ATNState.h"
63
- #include "atn/ATNType.h"
64
- #include "atn/ActionTransition.h"
65
- #include "atn/AmbiguityInfo.h"
66
- #include "atn/ArrayPredictionContext.h"
67
- #include "atn/AtomTransition.h"
68
- #include "atn/BasicBlockStartState.h"
69
- #include "atn/BasicState.h"
70
- #include "atn/BlockEndState.h"
71
- #include "atn/BlockStartState.h"
72
- #include "atn/ContextSensitivityInfo.h"
73
- #include "atn/DecisionEventInfo.h"
74
- #include "atn/DecisionInfo.h"
75
- #include "atn/DecisionState.h"
76
- #include "atn/EpsilonTransition.h"
77
- #include "atn/ErrorInfo.h"
78
- #include "atn/LL1Analyzer.h"
79
- #include "atn/LexerATNConfig.h"
80
- #include "atn/LexerATNSimulator.h"
81
- #include "atn/LexerAction.h"
82
- #include "atn/LexerActionExecutor.h"
83
- #include "atn/LexerActionType.h"
84
- #include "atn/LexerChannelAction.h"
85
- #include "atn/LexerCustomAction.h"
86
- #include "atn/LexerIndexedCustomAction.h"
87
- #include "atn/LexerModeAction.h"
88
- #include "atn/LexerMoreAction.h"
89
- #include "atn/LexerPopModeAction.h"
90
- #include "atn/LexerPushModeAction.h"
91
- #include "atn/LexerSkipAction.h"
92
- #include "atn/LexerTypeAction.h"
93
- #include "atn/LookaheadEventInfo.h"
94
- #include "atn/LoopEndState.h"
95
- #include "atn/NotSetTransition.h"
96
- #include "atn/OrderedATNConfigSet.h"
97
- #include "atn/ParseInfo.h"
98
- #include "atn/ParserATNSimulator.h"
99
- #include "atn/ParserATNSimulatorOptions.h"
100
- #include "atn/PlusBlockStartState.h"
101
- #include "atn/PlusLoopbackState.h"
102
- #include "atn/PrecedencePredicateTransition.h"
103
- #include "atn/PredicateEvalInfo.h"
104
- #include "atn/PredicateTransition.h"
105
- #include "atn/PredictionContext.h"
106
- #include "atn/PredictionContextCache.h"
107
- #include "atn/PredictionContextMergeCache.h"
108
- #include "atn/PredictionContextMergeCacheOptions.h"
109
- #include "atn/PredictionMode.h"
110
- #include "atn/ProfilingATNSimulator.h"
111
- #include "atn/RangeTransition.h"
112
- #include "atn/RuleStartState.h"
113
- #include "atn/RuleStopState.h"
114
- #include "atn/RuleTransition.h"
115
- #include "atn/SemanticContext.h"
116
- #include "atn/SerializedATNView.h"
117
- #include "atn/SetTransition.h"
118
- #include "atn/SingletonPredictionContext.h"
119
- #include "atn/StarBlockStartState.h"
120
- #include "atn/StarLoopEntryState.h"
121
- #include "atn/StarLoopbackState.h"
122
- #include "atn/TokensStartState.h"
123
- #include "atn/Transition.h"
124
- #include "atn/WildcardTransition.h"
125
- #include "dfa/DFA.h"
126
- #include "dfa/DFASerializer.h"
127
- #include "dfa/DFAState.h"
128
- #include "dfa/LexerDFASerializer.h"
129
- #include "misc/InterpreterDataReader.h"
130
- #include "misc/Interval.h"
131
- #include "misc/IntervalSet.h"
132
- #include "misc/MurmurHash.h"
133
- #include "misc/Predicate.h"
134
- #include "support/Any.h"
135
- #include "support/Arrays.h"
136
- #include "support/BitSet.h"
137
- #include "support/Casts.h"
138
- #include "support/CPPUtils.h"
139
- #include "tree/AbstractParseTreeVisitor.h"
140
- #include "tree/ErrorNode.h"
141
- #include "tree/ErrorNodeImpl.h"
142
- #include "tree/ParseTree.h"
143
- #include "tree/ParseTreeListener.h"
144
- #include "tree/ParseTreeProperty.h"
145
- #include "tree/ParseTreeVisitor.h"
146
- #include "tree/ParseTreeWalker.h"
147
- #include "tree/TerminalNode.h"
148
- #include "tree/TerminalNodeImpl.h"
149
- #include "tree/Trees.h"
150
- #include "tree/pattern/Chunk.h"
151
- #include "tree/pattern/ParseTreeMatch.h"
152
- #include "tree/pattern/ParseTreePattern.h"
153
- #include "tree/pattern/ParseTreePatternMatcher.h"
154
- #include "tree/pattern/RuleTagToken.h"
155
- #include "tree/pattern/TagChunk.h"
156
- #include "tree/pattern/TextChunk.h"
157
- #include "tree/pattern/TokenTagToken.h"
158
- #include "tree/xpath/XPath.h"
159
- #include "tree/xpath/XPathElement.h"
160
- #include "tree/xpath/XPathLexer.h"
161
- #include "tree/xpath/XPathLexerErrorListener.h"
162
- #include "tree/xpath/XPathRuleAnywhereElement.h"
163
- #include "tree/xpath/XPathRuleElement.h"
164
- #include "tree/xpath/XPathTokenAnywhereElement.h"
165
- #include "tree/xpath/XPathTokenElement.h"
166
- #include "tree/xpath/XPathWildcardAnywhereElement.h"
167
- #include "tree/xpath/XPathWildcardElement.h"
168
- #include "internal/Synchronization.h"
@@ -1,159 +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 "atn/LL1Analyzer.h"
7
- #include "Token.h"
8
- #include "atn/RuleTransition.h"
9
- #include "misc/IntervalSet.h"
10
- #include "RuleContext.h"
11
- #include "atn/DecisionState.h"
12
- #include "Recognizer.h"
13
- #include "atn/ATNType.h"
14
- #include "Exceptions.h"
15
- #include "support/CPPUtils.h"
16
-
17
- #include "atn/ATN.h"
18
-
19
- using namespace antlr4;
20
- using namespace antlr4::atn;
21
- using namespace antlr4::internal;
22
- using namespace antlrcpp;
23
-
24
- ATN::ATN() : ATN(ATNType::LEXER, 0) {}
25
-
26
- ATN::ATN(ATNType grammarType_, size_t maxTokenType_) : grammarType(grammarType_), maxTokenType(maxTokenType_) {}
27
-
28
- ATN::~ATN() {
29
- for (ATNState *state : states) {
30
- delete state;
31
- }
32
- }
33
-
34
- misc::IntervalSet ATN::nextTokens(ATNState *s, RuleContext *ctx) const {
35
- LL1Analyzer analyzer(*this);
36
- return analyzer.LOOK(s, ctx);
37
-
38
- }
39
-
40
- misc::IntervalSet const& ATN::nextTokens(ATNState *s) const {
41
- if (!s->_nextTokenUpdated) {
42
- UniqueLock<Mutex> lock(_mutex);
43
- if (!s->_nextTokenUpdated) {
44
- s->_nextTokenWithinRule = nextTokens(s, nullptr);
45
- s->_nextTokenUpdated = true;
46
- }
47
- }
48
- return s->_nextTokenWithinRule;
49
- }
50
-
51
- void ATN::addState(ATNState *state) {
52
- if (state != nullptr) {
53
- //state->atn = this;
54
- state->stateNumber = static_cast<int>(states.size());
55
- }
56
-
57
- states.push_back(state);
58
- }
59
-
60
- void ATN::removeState(ATNState *state) {
61
- delete states.at(state->stateNumber);// just free mem, don't shift states in list
62
- states.at(state->stateNumber) = nullptr;
63
- }
64
-
65
- int ATN::defineDecisionState(DecisionState *s) {
66
- decisionToState.push_back(s);
67
- s->decision = static_cast<int>(decisionToState.size() - 1);
68
- return s->decision;
69
- }
70
-
71
- DecisionState *ATN::getDecisionState(size_t decision) const {
72
- if (!decisionToState.empty()) {
73
- return decisionToState[decision];
74
- }
75
- return nullptr;
76
- }
77
-
78
- size_t ATN::getNumberOfDecisions() const {
79
- return decisionToState.size();
80
- }
81
-
82
- misc::IntervalSet ATN::getExpectedTokens(size_t stateNumber, RuleContext *context) const {
83
- if (stateNumber == ATNState::INVALID_STATE_NUMBER || stateNumber >= states.size()) {
84
- throw IllegalArgumentException("Invalid state number.");
85
- }
86
-
87
- RuleContext *ctx = context;
88
- ATNState *s = states.at(stateNumber);
89
- misc::IntervalSet following = nextTokens(s);
90
- if (!following.contains(Token::EPSILON)) {
91
- return following;
92
- }
93
-
94
- misc::IntervalSet expected;
95
- expected.addAll(following);
96
- expected.remove(Token::EPSILON);
97
- while (ctx && ctx->invokingState != ATNState::INVALID_STATE_NUMBER && following.contains(Token::EPSILON)) {
98
- ATNState *invokingState = states.at(ctx->invokingState);
99
- const RuleTransition *rt = static_cast<const RuleTransition*>(invokingState->transitions[0].get());
100
- following = nextTokens(rt->followState);
101
- expected.addAll(following);
102
- expected.remove(Token::EPSILON);
103
-
104
- if (ctx->parent == nullptr) {
105
- break;
106
- }
107
- ctx = static_cast<RuleContext *>(ctx->parent);
108
- }
109
-
110
- if (following.contains(Token::EPSILON)) {
111
- expected.add(Token::EOF);
112
- }
113
-
114
- return expected;
115
- }
116
-
117
- std::string ATN::toString() const {
118
- std::stringstream ss;
119
- std::string type;
120
- switch (grammarType) {
121
- case ATNType::LEXER:
122
- type = "LEXER ";
123
- break;
124
-
125
- case ATNType::PARSER:
126
- type = "PARSER ";
127
- break;
128
-
129
- default:
130
- break;
131
- }
132
- ss << "(" << type << "ATN " << std::hex << this << std::dec << ") maxTokenType: " << maxTokenType << std::endl;
133
- ss << "states (" << states.size() << ") {" << std::endl;
134
-
135
- size_t index = 0;
136
- for (auto *state : states) {
137
- if (state == nullptr) {
138
- ss << " " << index++ << ": nul" << std::endl;
139
- } else {
140
- std::string text = state->toString();
141
- ss << " " << index++ << ": " << indent(text, " ", false) << std::endl;
142
- }
143
- }
144
-
145
- index = 0;
146
- for (auto *state : decisionToState) {
147
- if (state == nullptr) {
148
- ss << " " << index++ << ": nul" << std::endl;
149
- } else {
150
- std::string text = state->toString();
151
- ss << " " << index++ << ": " << indent(text, " ", false) << std::endl;
152
- }
153
- }
154
-
155
- ss << "}";
156
-
157
- return ss.str();
158
- }
159
-
@@ -1,133 +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 "RuleContext.h"
9
- #include "internal/Synchronization.h"
10
-
11
- // GCC generates a warning when forward-declaring ATN if ATN has already been
12
- // declared due to the attributes added by ANTLR4CPP_PUBLIC.
13
- // See: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=39159
14
- // Add constant that can be checked so forward-declarations can be omitted.
15
- #define ANTLR4CPP_ATN_DECLARED
16
-
17
- namespace antlr4 {
18
- namespace atn {
19
-
20
- class LexerATNSimulator;
21
- class ParserATNSimulator;
22
-
23
- class ANTLR4CPP_PUBLIC ATN {
24
- public:
25
- static constexpr size_t INVALID_ALT_NUMBER = 0;
26
-
27
- /// Used for runtime deserialization of ATNs from strings.
28
- ATN();
29
-
30
- ATN(ATNType grammarType, size_t maxTokenType);
31
-
32
- ATN(const ATN&) = delete;
33
-
34
- ATN(ATN&&) = delete;
35
-
36
- ~ATN();
37
-
38
- ATN& operator=(const ATN&) = delete;
39
-
40
- ATN& operator=(ATN&&) = delete;
41
-
42
- std::vector<ATNState *> states;
43
-
44
- /// Each subrule/rule is a decision point and we must track them so we
45
- /// can go back later and build DFA predictors for them. This includes
46
- /// all the rules, subrules, optional blocks, ()+, ()* etc...
47
- std::vector<DecisionState *> decisionToState;
48
-
49
- /// Maps from rule index to starting state number.
50
- std::vector<RuleStartState *> ruleToStartState;
51
-
52
- /// Maps from rule index to stop state number.
53
- std::vector<RuleStopState *> ruleToStopState;
54
-
55
- /// The type of the ATN.
56
- ATNType grammarType;
57
-
58
- /// The maximum value for any symbol recognized by a transition in the ATN.
59
- size_t maxTokenType;
60
-
61
- /// <summary>
62
- /// For lexer ATNs, this maps the rule index to the resulting token type.
63
- /// For parser ATNs, this maps the rule index to the generated bypass token
64
- /// type if the
65
- /// <seealso cref="ATNDeserializationOptions#isGenerateRuleBypassTransitions"/>
66
- /// deserialization option was specified; otherwise, this is {@code null}.
67
- /// </summary>
68
- std::vector<size_t> ruleToTokenType;
69
-
70
- /// For lexer ATNs, this is an array of {@link LexerAction} objects which may
71
- /// be referenced by action transitions in the ATN.
72
- std::vector<Ref<const LexerAction>> lexerActions;
73
-
74
- std::vector<TokensStartState *> modeToStartState;
75
-
76
- /// <summary>
77
- /// Compute the set of valid tokens that can occur starting in state {@code s}.
78
- /// If {@code ctx} is null, the set of tokens will not include what can follow
79
- /// the rule surrounding {@code s}. In other words, the set will be
80
- /// restricted to tokens reachable staying within {@code s}'s rule.
81
- /// </summary>
82
- misc::IntervalSet nextTokens(ATNState *s, RuleContext *ctx) const;
83
-
84
- /// <summary>
85
- /// Compute the set of valid tokens that can occur starting in {@code s} and
86
- /// staying in same rule. <seealso cref="Token#EPSILON"/> is in set if we reach end of
87
- /// rule.
88
- /// </summary>
89
- misc::IntervalSet const& nextTokens(ATNState *s) const;
90
-
91
- void addState(ATNState *state);
92
-
93
- void removeState(ATNState *state);
94
-
95
- int defineDecisionState(DecisionState *s);
96
-
97
- DecisionState *getDecisionState(size_t decision) const;
98
-
99
- size_t getNumberOfDecisions() const;
100
-
101
- /// <summary>
102
- /// Computes the set of input symbols which could follow ATN state number
103
- /// {@code stateNumber} in the specified full {@code context}. This method
104
- /// considers the complete parser context, but does not evaluate semantic
105
- /// predicates (i.e. all predicates encountered during the calculation are
106
- /// assumed true). If a path in the ATN exists from the starting state to the
107
- /// <seealso cref="RuleStopState"/> of the outermost context without matching any
108
- /// symbols, <seealso cref="Token#EOF"/> is added to the returned set.
109
- /// <p/>
110
- /// If {@code context} is {@code null}, it is treated as
111
- /// <seealso cref="ParserRuleContext#EMPTY"/>.
112
- /// </summary>
113
- /// <param name="stateNumber"> the ATN state number </param>
114
- /// <param name="context"> the full parse context </param>
115
- /// <returns> The set of potentially valid input symbols which could follow the
116
- /// specified state in the specified context. </returns>
117
- /// <exception cref="IllegalArgumentException"> if the ATN does not contain a state with
118
- /// number {@code stateNumber} </exception>
119
- misc::IntervalSet getExpectedTokens(size_t stateNumber, RuleContext *context) const;
120
-
121
- std::string toString() const;
122
-
123
- private:
124
- friend class LexerATNSimulator;
125
- friend class ParserATNSimulator;
126
-
127
- mutable internal::Mutex _mutex;
128
- mutable internal::SharedMutex _stateMutex;
129
- mutable internal::SharedMutex _edgeMutex;
130
- };
131
-
132
- } // namespace atn
133
- } // namespace antlr4
@@ -1,106 +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 "misc/MurmurHash.h"
7
- #include "atn/PredictionContext.h"
8
- #include "SemanticContext.h"
9
-
10
- #include "atn/ATNConfig.h"
11
-
12
- using namespace antlr4::atn;
13
-
14
- namespace {
15
-
16
- /**
17
- * This field stores the bit mask for implementing the
18
- * {@link #isPrecedenceFilterSuppressed} property as a bit within the
19
- * existing {@link #reachesIntoOuterContext} field.
20
- */
21
- inline constexpr size_t SUPPRESS_PRECEDENCE_FILTER = 0x40000000;
22
-
23
- }
24
-
25
- ATNConfig::ATNConfig(ATNState *state, size_t alt, Ref<const PredictionContext> context)
26
- : ATNConfig(state, alt, std::move(context), 0, SemanticContext::Empty::Instance) {}
27
-
28
- ATNConfig::ATNConfig(ATNState *state, size_t alt, Ref<const PredictionContext> context, Ref<const SemanticContext> semanticContext)
29
- : ATNConfig(state, alt, std::move(context), 0, std::move(semanticContext)) {}
30
-
31
- ATNConfig::ATNConfig(ATNConfig const& other, Ref<const SemanticContext> semanticContext)
32
- : ATNConfig(other.state, other.alt, other.context, other.reachesIntoOuterContext, std::move(semanticContext)) {}
33
-
34
- ATNConfig::ATNConfig(ATNConfig const& other, ATNState *state)
35
- : ATNConfig(state, other.alt, other.context, other.reachesIntoOuterContext, other.semanticContext) {}
36
-
37
- ATNConfig::ATNConfig(ATNConfig const& other, ATNState *state, Ref<const SemanticContext> semanticContext)
38
- : ATNConfig(state, other.alt, other.context, other.reachesIntoOuterContext, std::move(semanticContext)) {}
39
-
40
- ATNConfig::ATNConfig(ATNConfig const& other, ATNState *state, Ref<const PredictionContext> context)
41
- : ATNConfig(state, other.alt, std::move(context), other.reachesIntoOuterContext, other.semanticContext) {}
42
-
43
- ATNConfig::ATNConfig(ATNConfig const& other, ATNState *state, Ref<const PredictionContext> context, Ref<const SemanticContext> semanticContext)
44
- : ATNConfig(state, other.alt, std::move(context), other.reachesIntoOuterContext, std::move(semanticContext)) {}
45
-
46
- ATNConfig::ATNConfig(ATNState *state, size_t alt, Ref<const PredictionContext> context, size_t reachesIntoOuterContext, Ref<const SemanticContext> semanticContext)
47
- : state(state), alt(alt), context(std::move(context)), reachesIntoOuterContext(reachesIntoOuterContext), semanticContext(std::move(semanticContext)) {}
48
-
49
- size_t ATNConfig::hashCode() const {
50
- size_t hashCode = misc::MurmurHash::initialize(7);
51
- hashCode = misc::MurmurHash::update(hashCode, state->stateNumber);
52
- hashCode = misc::MurmurHash::update(hashCode, alt);
53
- hashCode = misc::MurmurHash::update(hashCode, context);
54
- hashCode = misc::MurmurHash::update(hashCode, semanticContext);
55
- hashCode = misc::MurmurHash::finish(hashCode, 4);
56
- return hashCode;
57
- }
58
-
59
- size_t ATNConfig::getOuterContextDepth() const {
60
- return reachesIntoOuterContext & ~SUPPRESS_PRECEDENCE_FILTER;
61
- }
62
-
63
- bool ATNConfig::isPrecedenceFilterSuppressed() const {
64
- return (reachesIntoOuterContext & SUPPRESS_PRECEDENCE_FILTER) != 0;
65
- }
66
-
67
- void ATNConfig::setPrecedenceFilterSuppressed(bool value) {
68
- if (value) {
69
- reachesIntoOuterContext |= SUPPRESS_PRECEDENCE_FILTER;
70
- } else {
71
- reachesIntoOuterContext &= ~SUPPRESS_PRECEDENCE_FILTER;
72
- }
73
- }
74
-
75
- bool ATNConfig::operator==(const ATNConfig &other) const {
76
- return state->stateNumber == other.state->stateNumber && alt == other.alt &&
77
- ((context == other.context) || (*context == *other.context)) &&
78
- *semanticContext == *other.semanticContext &&
79
- isPrecedenceFilterSuppressed() == other.isPrecedenceFilterSuppressed();
80
- }
81
-
82
- std::string ATNConfig::toString() const {
83
- return toString(true);
84
- }
85
-
86
- std::string ATNConfig::toString(bool showAlt) const {
87
- std::stringstream ss;
88
- ss << "(";
89
-
90
- ss << state->toString();
91
- if (showAlt) {
92
- ss << "," << alt;
93
- }
94
- if (context) {
95
- ss << ",[" << context->toString() << "]";
96
- }
97
- if (semanticContext != nullptr && semanticContext != SemanticContext::Empty::Instance) {
98
- ss << "," << semanticContext->toString();
99
- }
100
- if (getOuterContextDepth() > 0) {
101
- ss << ",up=" << getOuterContextDepth();
102
- }
103
- ss << ")";
104
-
105
- return ss.str();
106
- }