expressir 1.2.4 → 1.2.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (310) hide show
  1. checksums.yaml +4 -4
  2. data/.cross_rubies +0 -6
  3. data/.github/workflows/rake.yml +200 -9
  4. data/.gitignore +7 -2
  5. data/.gitmodules +3 -0
  6. data/.rubocop.yml +13 -4
  7. data/Rakefile +4 -1
  8. data/bin/console +0 -1
  9. data/bin/rspec +3 -3
  10. data/exe/expressir +4 -2
  11. data/exe/format +1 -1
  12. data/exe/format-test +25 -25
  13. data/exe/generate-parser +16 -13
  14. data/expressir.gemspec +11 -9
  15. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/CMakeLists.txt +44 -34
  16. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj +11 -5
  17. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2013.vcxproj.filters +0 -3
  18. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj +11 -4
  19. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2015.vcxproj.filters +0 -3
  20. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2017.vcxproj +11 -4
  21. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2017.vcxproj.filters +0 -3
  22. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj +11 -4
  23. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlr4cpp-vs2019.vcxproj.filters +0 -3
  24. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/antlrcpp.xcodeproj/project.pbxproj +20 -20
  25. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRFileStream.cpp +0 -6
  26. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.cpp +30 -19
  27. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ANTLRInputStream.h +13 -10
  28. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/CommonToken.cpp +2 -4
  29. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/DefaultErrorStrategy.cpp +16 -13
  30. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.cpp +2 -2
  31. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Exceptions.h +2 -2
  32. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.cpp +5 -4
  33. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/FailedPredicateException.h +1 -1
  34. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/IntStream.h +0 -6
  35. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.cpp +0 -1
  36. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Lexer.h +0 -13
  37. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.cpp +0 -15
  38. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/LexerInterpreter.h +1 -7
  39. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.cpp +47 -27
  40. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Parser.h +0 -6
  41. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.cpp +27 -39
  42. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserInterpreter.h +1 -7
  43. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.cpp +19 -22
  44. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/ParserRuleContext.h +20 -20
  45. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RecognitionException.cpp +0 -1
  46. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.cpp +16 -27
  47. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Recognizer.h +10 -21
  48. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.cpp +4 -3
  49. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuleContext.h +5 -1
  50. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/RuntimeMetaData.cpp +2 -1
  51. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Token.h +0 -32
  52. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.cpp +1 -1
  53. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/TokenStreamRewriter.h +2 -7
  54. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.cpp +15 -18
  55. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/UnbufferedCharStream.h +12 -18
  56. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Version.h +42 -0
  57. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.cpp +13 -45
  58. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/Vocabulary.h +11 -26
  59. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-common.h +19 -61
  60. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/antlr4-runtime.h +7 -5
  61. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.cpp +4 -55
  62. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATN.h +34 -20
  63. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.cpp +30 -35
  64. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfig.h +35 -32
  65. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.cpp +58 -54
  66. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNConfigSet.h +77 -31
  67. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.cpp +22 -32
  68. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializationOptions.h +22 -24
  69. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.cpp +335 -462
  70. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNDeserializer.h +9 -68
  71. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.cpp +9 -39
  72. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSimulator.h +6 -22
  73. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.cpp +10 -26
  74. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNState.h +41 -42
  75. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNStateType.cpp +33 -0
  76. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNStateType.h +36 -0
  77. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.cpp +2 -6
  78. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ActionTransition.h +4 -2
  79. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.cpp +49 -22
  80. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ArrayPredictionContext.h +20 -12
  81. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.cpp +1 -5
  82. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AtomTransition.h +5 -2
  83. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.h +4 -2
  84. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.h +4 -2
  85. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.h +5 -3
  86. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.h +10 -1
  87. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionInfo.h +1 -1
  88. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.cpp +0 -5
  89. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/DecisionState.h +12 -8
  90. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.cpp +2 -6
  91. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EpsilonTransition.h +6 -3
  92. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.cpp +139 -106
  93. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LL1Analyzer.h +9 -48
  94. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.cpp +16 -33
  95. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNConfig.h +12 -12
  96. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.cpp +69 -82
  97. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerATNSimulator.h +15 -33
  98. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.cpp +12 -6
  99. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerAction.h +45 -11
  100. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.cpp +48 -44
  101. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionExecutor.h +31 -18
  102. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerActionType.h +3 -1
  103. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.cpp +14 -26
  104. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerChannelAction.h +12 -16
  105. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.cpp +15 -32
  106. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerCustomAction.h +12 -24
  107. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.cpp +23 -29
  108. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerIndexedCustomAction.h +13 -19
  109. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.cpp +13 -26
  110. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerModeAction.h +12 -16
  111. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.cpp +6 -17
  112. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerMoreAction.h +12 -16
  113. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.cpp +6 -17
  114. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPopModeAction.h +12 -16
  115. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.cpp +13 -26
  116. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerPushModeAction.h +12 -16
  117. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.cpp +6 -17
  118. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerSkipAction.h +11 -15
  119. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.cpp +13 -26
  120. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LexerTypeAction.h +13 -17
  121. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.h +5 -1
  122. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.cpp +1 -6
  123. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/NotSetTransition.h +4 -2
  124. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.cpp +6 -2
  125. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/OrderedATNConfigSet.h +8 -3
  126. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.cpp +164 -151
  127. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulator.h +26 -19
  128. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ParserATNSimulatorOptions.h +50 -0
  129. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.h +5 -1
  130. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.h +5 -2
  131. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.cpp +2 -11
  132. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PrecedencePredicateTransition.h +15 -9
  133. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.cpp +2 -2
  134. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateEvalInfo.h +2 -2
  135. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.cpp +4 -14
  136. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredicateTransition.h +22 -11
  137. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.cpp +255 -338
  138. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContext.h +86 -127
  139. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextCache.cpp +56 -0
  140. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextCache.h +64 -0
  141. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextMergeCache.cpp +167 -0
  142. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextMergeCache.h +101 -0
  143. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextMergeCacheOptions.h +71 -0
  144. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionContextType.h +21 -0
  145. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.cpp +18 -17
  146. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PredictionMode.h +1 -1
  147. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.cpp +2 -2
  148. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ProfilingATNSimulator.h +2 -2
  149. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.cpp +1 -5
  150. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RangeTransition.h +4 -2
  151. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.h +4 -3
  152. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.h +4 -2
  153. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.cpp +1 -5
  154. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleTransition.h +5 -3
  155. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.cpp +197 -156
  156. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContext.h +92 -81
  157. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SemanticContextType.h +23 -0
  158. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SerializedATNView.h +101 -0
  159. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.cpp +2 -6
  160. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SetTransition.h +11 -3
  161. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.cpp +39 -34
  162. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/SingletonPredictionContext.h +17 -10
  163. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.h +5 -2
  164. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.h +4 -2
  165. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.cpp +6 -6
  166. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopbackState.h +6 -2
  167. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.h +5 -2
  168. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.cpp +1 -9
  169. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Transition.h +11 -22
  170. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TransitionType.cpp +27 -0
  171. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TransitionType.h +33 -0
  172. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.cpp +1 -5
  173. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/WildcardTransition.h +4 -2
  174. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.cpp +9 -21
  175. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFA.h +20 -15
  176. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.cpp +1 -8
  177. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFASerializer.h +4 -4
  178. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.cpp +9 -50
  179. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/DFAState.h +57 -48
  180. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.cpp +1 -4
  181. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/dfa/LexerDFASerializer.h +3 -4
  182. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.cpp +2 -2
  183. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/InterpreterDataReader.h +3 -1
  184. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.cpp +1 -29
  185. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/Interval.h +10 -10
  186. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.cpp +7 -20
  187. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/IntervalSet.h +1 -9
  188. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.cpp +54 -68
  189. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/misc/MurmurHash.h +34 -14
  190. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.cpp +0 -5
  191. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Any.h +1 -155
  192. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Arrays.h +39 -0
  193. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/BitSet.h +1 -1
  194. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.cpp +12 -53
  195. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/CPPUtils.h +16 -29
  196. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Casts.h +34 -0
  197. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Declarations.h +0 -2
  198. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.cpp +25 -33
  199. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/StringUtils.h +2 -62
  200. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Unicode.h +28 -0
  201. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Utf8.cpp +242 -0
  202. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/Utf8.h +54 -0
  203. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/AbstractParseTreeVisitor.h +13 -12
  204. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.h +7 -2
  205. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.cpp +36 -5
  206. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNodeImpl.h +14 -4
  207. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/IterativeParseTreeWalker.cpp +14 -19
  208. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.cpp +0 -3
  209. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTree.h +13 -4
  210. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeType.h +22 -0
  211. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeVisitor.h +4 -4
  212. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.cpp +8 -9
  213. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ParseTreeWalker.h +4 -4
  214. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.h +10 -2
  215. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.cpp +2 -5
  216. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNodeImpl.h +4 -5
  217. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/pattern/ParseTreePatternMatcher.cpp +1 -2
  218. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.cpp +128 -119
  219. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/xpath/XPathLexer.h +18 -27
  220. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/tests/Utf8Test.cpp +110 -0
  221. data/ext/express-parser/antlrgen/Express.interp +1 -1
  222. data/ext/express-parser/antlrgen/ExpressBaseListener.cpp +1 -1
  223. data/ext/express-parser/antlrgen/ExpressBaseListener.h +1 -1
  224. data/ext/express-parser/antlrgen/ExpressBaseVisitor.cpp +1 -1
  225. data/ext/express-parser/antlrgen/ExpressBaseVisitor.h +200 -200
  226. data/ext/express-parser/antlrgen/ExpressLexer.cpp +645 -1129
  227. data/ext/express-parser/antlrgen/ExpressLexer.h +20 -27
  228. data/ext/express-parser/antlrgen/ExpressLexer.interp +1 -1
  229. data/ext/express-parser/antlrgen/ExpressListener.cpp +1 -1
  230. data/ext/express-parser/antlrgen/ExpressListener.h +1 -1
  231. data/ext/express-parser/antlrgen/ExpressParser.cpp +1754 -1447
  232. data/ext/express-parser/antlrgen/ExpressParser.h +219 -223
  233. data/ext/express-parser/antlrgen/ExpressVisitor.cpp +1 -1
  234. data/ext/express-parser/antlrgen/ExpressVisitor.h +200 -200
  235. data/ext/express-parser/express_parser.cpp +207 -75
  236. data/ext/express-parser/extconf.rb +10 -9
  237. data/lib/expressir/config.rb +1 -1
  238. data/lib/expressir/express/parser.rb +2 -2
  239. data/lib/expressir/express/visitor.rb +7 -5
  240. data/lib/expressir/model.rb +78 -78
  241. data/lib/expressir/version.rb +1 -1
  242. data/rakelib/antlr4-native.rake +63 -0
  243. data/rakelib/cross-ruby.rake +213 -162
  244. data/spec/acceptance/version_spec.rb +7 -2
  245. data/spec/expressir/express/cache_spec.rb +8 -5
  246. data/spec/expressir/express/formatter_spec.rb +16 -8
  247. data/spec/expressir/express/parser_spec.rb +17 -11
  248. data/spec/expressir/model/model_element_spec.rb +154 -146
  249. metadata +79 -91
  250. data/demo.rb +0 -18
  251. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.cpp +0 -621
  252. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/ATNSerializer.h +0 -61
  253. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.cpp +0 -14
  254. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/AbstractPredicateTransition.h +0 -24
  255. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicBlockStartState.cpp +0 -12
  256. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BasicState.cpp +0 -12
  257. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockEndState.cpp +0 -15
  258. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/BlockStartState.cpp +0 -9
  259. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EmptyPredictionContext.cpp +0 -35
  260. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/EmptyPredictionContext.h +0 -27
  261. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/LoopEndState.cpp +0 -12
  262. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/Makefile +0 -67
  263. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusBlockStartState.cpp +0 -12
  264. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/PlusLoopbackState.cpp +0 -12
  265. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStartState.cpp +0 -16
  266. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/RuleStopState.cpp +0 -12
  267. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarBlockStartState.cpp +0 -12
  268. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/StarLoopEntryState.cpp +0 -15
  269. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/atn/TokensStartState.cpp +0 -12
  270. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/guid.cpp +0 -303
  271. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/support/guid.h +0 -112
  272. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/ErrorNode.cpp +0 -9
  273. data/ext/express-parser/antlr4-upstream/runtime/Cpp/runtime/src/tree/TerminalNode.cpp +0 -9
  274. data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.exp +0 -9589
  275. data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.owl +0 -36619
  276. data/original/examples/ap233/ap233e1_arm_lf_stepmod-2010-11-12.xml +0 -13294
  277. data/original/examples/employment/eclipse/.project +0 -17
  278. data/original/examples/employment/eclipse/Export/Employment.png +0 -0
  279. data/original/examples/employment/eclipse/Express/employment_schema.exp +0 -33
  280. data/original/examples/employment/eclipse/Express/employment_schema.xmi +0 -77
  281. data/original/examples/employment/eclipse/Express/employment_schema.xml +0 -93
  282. data/original/examples/employment/eclipse/Models/Employment.uml +0 -4
  283. data/original/examples/employment/eclipse/Models/Employment.umldi +0 -240
  284. data/original/examples/employment/eclipse/readme.txt +0 -7
  285. data/original/examples/employment/employment_schema.exp +0 -33
  286. data/original/examples/employment/employment_schema.rb +0 -232
  287. data/original/examples/employment/employment_schema.xml +0 -93
  288. data/original/examples/employment/employment_schema___module.rb +0 -46
  289. data/original/examples/employment/employment_schema___p28attr.rb +0 -126
  290. data/original/examples/employment/employment_schema___p28inst.rb +0 -26
  291. data/original/examples/employment/example_employment_data.xml +0 -1
  292. data/original/examples/employment/example_employment_data_copy.xml +0 -1
  293. data/original/examples/employment/example_employment_reader.rb +0 -30
  294. data/original/examples/employment/example_employment_writer.rb +0 -51
  295. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.exp +0 -3710
  296. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.owl +0 -35880
  297. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.xmi +0 -15357
  298. data/original/examples/plcs/ap239e1_arm_lf_dexlib_2010-01-06.xml +0 -9468
  299. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.exp +0 -8404
  300. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.owl +0 -43147
  301. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.xmi +0 -18341
  302. data/original/examples/plcs/ap239e2_arm_lf_stepmod-2010-01-25.xml +0 -11632
  303. data/original/exp2ruby.rb +0 -525
  304. data/original/expsm.rb +0 -34
  305. data/original/mapping_owl.rb +0 -1018
  306. data/original/mapping_sysml.rb +0 -2281
  307. data/original/mapping_uml2.rb +0 -599
  308. data/original/mapping_uml2_eclipse.rb +0 -433
  309. data/original/reeper.rb +0 -134
  310. data/spec/expressr_spec.rb +0 -5
@@ -8,7 +8,6 @@
8
8
 
9
9
  /* Begin PBXBuildFile section */
10
10
  270C67F31CDB4F1E00116E17 /* antlrcpp_ios.h in Headers */ = {isa = PBXBuildFile; fileRef = 270C67F21CDB4F1E00116E17 /* antlrcpp_ios.h */; settings = {ATTRIBUTES = (Public, ); }; };
11
- 270C69E01CDB536A00116E17 /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 270C69DF1CDB536A00116E17 /* CoreFoundation.framework */; };
12
11
  276566E01DA93BFB000869BE /* ParseTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276566DF1DA93BFB000869BE /* ParseTree.cpp */; };
13
12
  276566E11DA93BFB000869BE /* ParseTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276566DF1DA93BFB000869BE /* ParseTree.cpp */; };
14
13
  276566E21DA93BFB000869BE /* ParseTree.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276566DF1DA93BFB000869BE /* ParseTree.cpp */; };
@@ -645,12 +644,12 @@
645
644
  276E5FBC1CDB57AA003FF4B4 /* Declarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEA1CDB57AA003FF4B4 /* Declarations.h */; };
646
645
  276E5FBD1CDB57AA003FF4B4 /* Declarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEA1CDB57AA003FF4B4 /* Declarations.h */; };
647
646
  276E5FBE1CDB57AA003FF4B4 /* Declarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEA1CDB57AA003FF4B4 /* Declarations.h */; settings = {ATTRIBUTES = (Public, ); }; };
648
- 276E5FBF1CDB57AA003FF4B4 /* guid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CEB1CDB57AA003FF4B4 /* guid.cpp */; };
649
- 276E5FC01CDB57AA003FF4B4 /* guid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CEB1CDB57AA003FF4B4 /* guid.cpp */; };
650
- 276E5FC11CDB57AA003FF4B4 /* guid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CEB1CDB57AA003FF4B4 /* guid.cpp */; };
651
- 276E5FC21CDB57AA003FF4B4 /* guid.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEC1CDB57AA003FF4B4 /* guid.h */; };
652
- 276E5FC31CDB57AA003FF4B4 /* guid.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEC1CDB57AA003FF4B4 /* guid.h */; };
653
- 276E5FC41CDB57AA003FF4B4 /* guid.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEC1CDB57AA003FF4B4 /* guid.h */; settings = {ATTRIBUTES = (Public, ); }; };
647
+ 276E5FBF1CDB57AA003FF4B4 /* Guid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CEB1CDB57AA003FF4B4 /* Guid.cpp */; };
648
+ 276E5FC01CDB57AA003FF4B4 /* Guid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CEB1CDB57AA003FF4B4 /* Guid.cpp */; };
649
+ 276E5FC11CDB57AA003FF4B4 /* Guid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CEB1CDB57AA003FF4B4 /* Guid.cpp */; };
650
+ 276E5FC21CDB57AA003FF4B4 /* Guid.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEC1CDB57AA003FF4B4 /* Guid.h */; };
651
+ 276E5FC31CDB57AA003FF4B4 /* Guid.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEC1CDB57AA003FF4B4 /* Guid.h */; };
652
+ 276E5FC41CDB57AA003FF4B4 /* Guid.h in Headers */ = {isa = PBXBuildFile; fileRef = 276E5CEC1CDB57AA003FF4B4 /* Guid.h */; settings = {ATTRIBUTES = (Public, ); }; };
654
653
  276E5FC51CDB57AA003FF4B4 /* StringUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CED1CDB57AA003FF4B4 /* StringUtils.cpp */; };
655
654
  276E5FC61CDB57AA003FF4B4 /* StringUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CED1CDB57AA003FF4B4 /* StringUtils.cpp */; };
656
655
  276E5FC71CDB57AA003FF4B4 /* StringUtils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 276E5CED1CDB57AA003FF4B4 /* StringUtils.cpp */; };
@@ -927,7 +926,6 @@
927
926
  270C67F01CDB4F1E00116E17 /* antlr4_ios.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = antlr4_ios.framework; sourceTree = BUILT_PRODUCTS_DIR; };
928
927
  270C67F21CDB4F1E00116E17 /* antlrcpp_ios.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = antlrcpp_ios.h; sourceTree = "<group>"; wrapsLines = 0; };
929
928
  270C67F41CDB4F1E00116E17 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
930
- 270C69DF1CDB536A00116E17 /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/System/Library/Frameworks/CoreFoundation.framework; sourceTree = DEVELOPER_DIR; };
931
929
  276566DF1DA93BFB000869BE /* ParseTree.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ParseTree.cpp; sourceTree = "<group>"; };
932
930
  276E5C0C1CDB57AA003FF4B4 /* ANTLRErrorListener.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ANTLRErrorListener.h; sourceTree = "<group>"; wrapsLines = 0; };
933
931
  276E5C0D1CDB57AA003FF4B4 /* ANTLRErrorStrategy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ANTLRErrorStrategy.h; sourceTree = "<group>"; };
@@ -1140,8 +1138,8 @@
1140
1138
  276E5CE81CDB57AA003FF4B4 /* CPPUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = CPPUtils.cpp; sourceTree = "<group>"; wrapsLines = 0; };
1141
1139
  276E5CE91CDB57AA003FF4B4 /* CPPUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; lineEnding = 0; path = CPPUtils.h; sourceTree = "<group>"; xcLanguageSpecificationIdentifier = xcode.lang.objcpp; };
1142
1140
  276E5CEA1CDB57AA003FF4B4 /* Declarations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Declarations.h; sourceTree = "<group>"; };
1143
- 276E5CEB1CDB57AA003FF4B4 /* guid.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = guid.cpp; sourceTree = "<group>"; };
1144
- 276E5CEC1CDB57AA003FF4B4 /* guid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = guid.h; sourceTree = "<group>"; };
1141
+ 276E5CEB1CDB57AA003FF4B4 /* Guid.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = Guid.cpp; sourceTree = "<group>"; };
1142
+ 276E5CEC1CDB57AA003FF4B4 /* Guid.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Guid.h; sourceTree = "<group>"; };
1145
1143
  276E5CED1CDB57AA003FF4B4 /* StringUtils.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = StringUtils.cpp; sourceTree = "<group>"; };
1146
1144
  276E5CEE1CDB57AA003FF4B4 /* StringUtils.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StringUtils.h; sourceTree = "<group>"; };
1147
1145
  276E5CF01CDB57AA003FF4B4 /* Token.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Token.h; sourceTree = "<group>"; };
@@ -1242,7 +1240,6 @@
1242
1240
  isa = PBXFrameworksBuildPhase;
1243
1241
  buildActionMask = 2147483647;
1244
1242
  files = (
1245
- 270C69E01CDB536A00116E17 /* CoreFoundation.framework in Frameworks */,
1246
1243
  );
1247
1244
  runOnlyForDeploymentPostprocessing = 0;
1248
1245
  };
@@ -1553,8 +1550,8 @@
1553
1550
  276E5CE81CDB57AA003FF4B4 /* CPPUtils.cpp */,
1554
1551
  276E5CE91CDB57AA003FF4B4 /* CPPUtils.h */,
1555
1552
  276E5CEA1CDB57AA003FF4B4 /* Declarations.h */,
1556
- 276E5CEB1CDB57AA003FF4B4 /* guid.cpp */,
1557
- 276E5CEC1CDB57AA003FF4B4 /* guid.h */,
1553
+ 276E5CEB1CDB57AA003FF4B4 /* Guid.cpp */,
1554
+ 276E5CEC1CDB57AA003FF4B4 /* Guid.h */,
1558
1555
  276E5CED1CDB57AA003FF4B4 /* StringUtils.cpp */,
1559
1556
  276E5CEE1CDB57AA003FF4B4 /* StringUtils.h */,
1560
1557
  );
@@ -1618,7 +1615,6 @@
1618
1615
  27874F221CCBB34200AF1C53 /* Linked Frameworks */ = {
1619
1616
  isa = PBXGroup;
1620
1617
  children = (
1621
- 270C69DF1CDB536A00116E17 /* CoreFoundation.framework */,
1622
1618
  27874F1D1CCB7A0700AF1C53 /* CoreFoundation.framework */,
1623
1619
  );
1624
1620
  name = "Linked Frameworks";
@@ -1767,7 +1763,7 @@
1767
1763
  276E5F581CDB57AA003FF4B4 /* LexerNoViableAltException.h in Headers */,
1768
1764
  276E5D811CDB57AA003FF4B4 /* ATNSimulator.h in Headers */,
1769
1765
  27DB44B61D0463CC007E790B /* XPathLexer.h in Headers */,
1770
- 276E5FC41CDB57AA003FF4B4 /* guid.h in Headers */,
1766
+ 276E5FC41CDB57AA003FF4B4 /* Guid.h in Headers */,
1771
1767
  276E602D1CDB57AA003FF4B4 /* TagChunk.h in Headers */,
1772
1768
  276E5E951CDB57AA003FF4B4 /* RuleStopState.h in Headers */,
1773
1769
  276E5F761CDB57AA003FF4B4 /* Predicate.h in Headers */,
@@ -1934,7 +1930,7 @@
1934
1930
  276E60141CDB57AA003FF4B4 /* ParseTreeMatch.h in Headers */,
1935
1931
  276E5F571CDB57AA003FF4B4 /* LexerNoViableAltException.h in Headers */,
1936
1932
  276E5D801CDB57AA003FF4B4 /* ATNSimulator.h in Headers */,
1937
- 276E5FC31CDB57AA003FF4B4 /* guid.h in Headers */,
1933
+ 276E5FC31CDB57AA003FF4B4 /* Guid.h in Headers */,
1938
1934
  276E602C1CDB57AA003FF4B4 /* TagChunk.h in Headers */,
1939
1935
  276E5E941CDB57AA003FF4B4 /* RuleStopState.h in Headers */,
1940
1936
  276E5F751CDB57AA003FF4B4 /* Predicate.h in Headers */,
@@ -2092,7 +2088,7 @@
2092
2088
  276E60131CDB57AA003FF4B4 /* ParseTreeMatch.h in Headers */,
2093
2089
  276E5F561CDB57AA003FF4B4 /* LexerNoViableAltException.h in Headers */,
2094
2090
  276E5D7F1CDB57AA003FF4B4 /* ATNSimulator.h in Headers */,
2095
- 276E5FC21CDB57AA003FF4B4 /* guid.h in Headers */,
2091
+ 276E5FC21CDB57AA003FF4B4 /* Guid.h in Headers */,
2096
2092
  276E602B1CDB57AA003FF4B4 /* TagChunk.h in Headers */,
2097
2093
  276E5E931CDB57AA003FF4B4 /* RuleStopState.h in Headers */,
2098
2094
  276E5F741CDB57AA003FF4B4 /* Predicate.h in Headers */,
@@ -2368,7 +2364,7 @@
2368
2364
  276E5E861CDB57AA003FF4B4 /* RangeTransition.cpp in Sources */,
2369
2365
  276E5D7E1CDB57AA003FF4B4 /* ATNSimulator.cpp in Sources */,
2370
2366
  276E5D9C1CDB57AA003FF4B4 /* BasicState.cpp in Sources */,
2371
- 276E5FC11CDB57AA003FF4B4 /* guid.cpp in Sources */,
2367
+ 276E5FC11CDB57AA003FF4B4 /* Guid.cpp in Sources */,
2372
2368
  276E5E801CDB57AA003FF4B4 /* ProfilingATNSimulator.cpp in Sources */,
2373
2369
  2793DCA91F08095F00A84290 /* ANTLRErrorStrategy.cpp in Sources */,
2374
2370
  276E5F401CDB57AA003FF4B4 /* IntStream.cpp in Sources */,
@@ -2522,7 +2518,7 @@
2522
2518
  276E5E851CDB57AA003FF4B4 /* RangeTransition.cpp in Sources */,
2523
2519
  276E5D7D1CDB57AA003FF4B4 /* ATNSimulator.cpp in Sources */,
2524
2520
  276E5D9B1CDB57AA003FF4B4 /* BasicState.cpp in Sources */,
2525
- 276E5FC01CDB57AA003FF4B4 /* guid.cpp in Sources */,
2521
+ 276E5FC01CDB57AA003FF4B4 /* Guid.cpp in Sources */,
2526
2522
  276E5E7F1CDB57AA003FF4B4 /* ProfilingATNSimulator.cpp in Sources */,
2527
2523
  2793DCA81F08095F00A84290 /* ANTLRErrorStrategy.cpp in Sources */,
2528
2524
  276E5F3F1CDB57AA003FF4B4 /* IntStream.cpp in Sources */,
@@ -2676,7 +2672,7 @@
2676
2672
  276E5E841CDB57AA003FF4B4 /* RangeTransition.cpp in Sources */,
2677
2673
  276E5D7C1CDB57AA003FF4B4 /* ATNSimulator.cpp in Sources */,
2678
2674
  276E5D9A1CDB57AA003FF4B4 /* BasicState.cpp in Sources */,
2679
- 276E5FBF1CDB57AA003FF4B4 /* guid.cpp in Sources */,
2675
+ 276E5FBF1CDB57AA003FF4B4 /* Guid.cpp in Sources */,
2680
2676
  276E5E7E1CDB57AA003FF4B4 /* ProfilingATNSimulator.cpp in Sources */,
2681
2677
  2793DCA71F08095F00A84290 /* ANTLRErrorStrategy.cpp in Sources */,
2682
2678
  276E5F3E1CDB57AA003FF4B4 /* IntStream.cpp in Sources */,
@@ -2737,6 +2733,7 @@
2737
2733
  isa = XCBuildConfiguration;
2738
2734
  buildSettings = {
2739
2735
  CLANG_ANALYZER_NONNULL = YES;
2736
+ CLANG_CXX_LANGUAGE_STANDARD = "c++17";
2740
2737
  CLANG_ENABLE_MODULES = YES;
2741
2738
  CLANG_WARN_UNREACHABLE_CODE = YES;
2742
2739
  "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -2772,6 +2769,7 @@
2772
2769
  isa = XCBuildConfiguration;
2773
2770
  buildSettings = {
2774
2771
  CLANG_ANALYZER_NONNULL = YES;
2772
+ CLANG_CXX_LANGUAGE_STANDARD = "c++17";
2775
2773
  CLANG_ENABLE_MODULES = YES;
2776
2774
  CLANG_WARN_UNREACHABLE_CODE = YES;
2777
2775
  "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
@@ -2807,6 +2805,7 @@
2807
2805
  37C1471F1B4D5A04008EDDDB /* Debug */ = {
2808
2806
  isa = XCBuildConfiguration;
2809
2807
  buildSettings = {
2808
+ CLANG_CXX_LANGUAGE_STANDARD = "c++17";
2810
2809
  CLANG_ENABLE_MODULES = YES;
2811
2810
  CLANG_WARN_UNREACHABLE_CODE = YES;
2812
2811
  COMBINE_HIDPI_IMAGES = YES;
@@ -2829,6 +2828,7 @@
2829
2828
  37C147201B4D5A04008EDDDB /* Release */ = {
2830
2829
  isa = XCBuildConfiguration;
2831
2830
  buildSettings = {
2831
+ CLANG_CXX_LANGUAGE_STANDARD = "c++17";
2832
2832
  CLANG_ENABLE_MODULES = YES;
2833
2833
  CLANG_WARN_UNREACHABLE_CODE = YES;
2834
2834
  COMBINE_HIDPI_IMAGES = YES;
@@ -3,8 +3,6 @@
3
3
  * can be found in the LICENSE.txt file in the project root.
4
4
  */
5
5
 
6
- #include "support/StringUtils.h"
7
-
8
6
  #include "ANTLRFileStream.h"
9
7
 
10
8
  using namespace antlr4;
@@ -15,11 +13,7 @@ void ANTLRFileStream::loadFromFile(const std::string &fileName) {
15
13
  return;
16
14
  }
17
15
 
18
- #ifdef _MSC_VER
19
- std::ifstream stream(antlrcpp::s2ws(fileName), std::ios::binary);
20
- #else
21
16
  std::ifstream stream(fileName, std::ios::binary);
22
- #endif
23
17
 
24
18
  ANTLRInputStream::load(stream);
25
19
  }
@@ -9,7 +9,7 @@
9
9
  #include "misc/Interval.h"
10
10
  #include "IntStream.h"
11
11
 
12
- #include "support/StringUtils.h"
12
+ #include "support/Utf8.h"
13
13
  #include "support/CPPUtils.h"
14
14
 
15
15
  #include "ANTLRInputStream.h"
@@ -23,15 +23,9 @@ ANTLRInputStream::ANTLRInputStream() {
23
23
  InitializeInstanceFields();
24
24
  }
25
25
 
26
- #if __cplusplus >= 201703L
27
- ANTLRInputStream::ANTLRInputStream(const std::string_view &input): ANTLRInputStream() {
26
+ ANTLRInputStream::ANTLRInputStream(std::string_view input): ANTLRInputStream() {
28
27
  load(input.data(), input.length());
29
28
  }
30
- #endif
31
-
32
- ANTLRInputStream::ANTLRInputStream(const std::string &input): ANTLRInputStream() {
33
- load(input.data(), input.size());
34
- }
35
29
 
36
30
  ANTLRInputStream::ANTLRInputStream(const char *data, size_t length) {
37
31
  load(data, length);
@@ -41,28 +35,37 @@ ANTLRInputStream::ANTLRInputStream(std::istream &stream): ANTLRInputStream() {
41
35
  load(stream);
42
36
  }
43
37
 
44
- void ANTLRInputStream::load(const std::string &input) {
45
- load(input.data(), input.size());
38
+ void ANTLRInputStream::load(const std::string &input, bool lenient) {
39
+ load(input.data(), input.size(), lenient);
46
40
  }
47
41
 
48
- void ANTLRInputStream::load(const char *data, size_t length) {
42
+ void ANTLRInputStream::load(const char *data, size_t length, bool lenient) {
49
43
  // Remove the UTF-8 BOM if present.
50
44
  const char *bom = "\xef\xbb\xbf";
51
- if (length >= 3 && strncmp(data, bom, 3) == 0)
52
- _data = antlrcpp::utf8_to_utf32(data + 3, data + length);
53
- else
54
- _data = antlrcpp::utf8_to_utf32(data, data + length);
45
+ if (length >= 3 && strncmp(data, bom, 3) == 0) {
46
+ data += 3;
47
+ length -= 3;
48
+ }
49
+ if (lenient) {
50
+ _data = Utf8::lenientDecode(std::string_view(data, length));
51
+ } else {
52
+ auto maybe_utf32 = Utf8::strictDecode(std::string_view(data, length));
53
+ if (!maybe_utf32.has_value()) {
54
+ throw IllegalArgumentException("UTF-8 string contains an illegal byte sequence");
55
+ }
56
+ _data = std::move(maybe_utf32).value();
57
+ }
55
58
  p = 0;
56
59
  }
57
60
 
58
- void ANTLRInputStream::load(std::istream &stream) {
61
+ void ANTLRInputStream::load(std::istream &stream, bool lenient) {
59
62
  if (!stream.good() || stream.eof()) // No fail, bad or EOF.
60
63
  return;
61
64
 
62
65
  _data.clear();
63
66
 
64
67
  std::string s((std::istreambuf_iterator<char>(stream)), std::istreambuf_iterator<char>());
65
- load(s.data(), s.length());
68
+ load(s.data(), s.length(), lenient);
66
69
  }
67
70
 
68
71
  void ANTLRInputStream::reset() {
@@ -150,7 +153,11 @@ std::string ANTLRInputStream::getText(const Interval &interval) {
150
153
  return "";
151
154
  }
152
155
 
153
- return antlrcpp::utf32_to_utf8(_data.substr(start, count));
156
+ auto maybeUtf8 = Utf8::strictEncode(std::u32string_view(_data).substr(start, count));
157
+ if (!maybeUtf8.has_value()) {
158
+ throw IllegalArgumentException("Input stream contains invalid Unicode code points");
159
+ }
160
+ return std::move(maybeUtf8).value();
154
161
  }
155
162
 
156
163
  std::string ANTLRInputStream::getSourceName() const {
@@ -161,7 +168,11 @@ std::string ANTLRInputStream::getSourceName() const {
161
168
  }
162
169
 
163
170
  std::string ANTLRInputStream::toString() const {
164
- return antlrcpp::utf32_to_utf8(_data);
171
+ auto maybeUtf8 = Utf8::strictEncode(_data);
172
+ if (!maybeUtf8.has_value()) {
173
+ throw IllegalArgumentException("Input stream contains invalid Unicode code points");
174
+ }
175
+ return std::move(maybeUtf8).value();
165
176
  }
166
177
 
167
178
  void ANTLRInputStream::InitializeInstanceFields() {
@@ -5,6 +5,8 @@
5
5
 
6
6
  #pragma once
7
7
 
8
+ #include <string_view>
9
+
8
10
  #include "CharStream.h"
9
11
 
10
12
  namespace antlr4 {
@@ -16,7 +18,7 @@ namespace antlr4 {
16
18
  protected:
17
19
  /// The data being scanned.
18
20
  // UTF-32
19
- UTF32String _data;
21
+ std::u32string _data;
20
22
 
21
23
  /// 0..n-1 index into string of next char </summary>
22
24
  size_t p;
@@ -26,18 +28,19 @@ namespace antlr4 {
26
28
  std::string name;
27
29
 
28
30
  ANTLRInputStream();
29
-
30
- #if __cplusplus >= 201703L
31
- ANTLRInputStream(const std::string_view &input);
32
- #endif
33
-
34
- ANTLRInputStream(const std::string &input);
31
+
32
+ ANTLRInputStream(std::string_view input);
33
+
35
34
  ANTLRInputStream(const char *data, size_t length);
36
35
  ANTLRInputStream(std::istream &stream);
37
36
 
38
- virtual void load(const std::string &input);
39
- virtual void load(const char *data, size_t length);
40
- virtual void load(std::istream &stream);
37
+ virtual void load(const std::string &input, bool lenient);
38
+ virtual void load(const char *data, size_t length, bool lenient);
39
+ virtual void load(std::istream &stream, bool lenient);
40
+
41
+ virtual void load(const std::string &input) { load(input, false); }
42
+ virtual void load(const char *data, size_t length) { load(data, length, false); }
43
+ virtual void load(std::istream &stream) { load(stream, false); }
41
44
 
42
45
  /// Reset the stream so that it's in the same state it was
43
46
  /// when the object was created *except* the data array is not
@@ -10,8 +10,8 @@
10
10
 
11
11
  #include "misc/Interval.h"
12
12
 
13
- #include "support/StringUtils.h"
14
13
  #include "support/CPPUtils.h"
14
+ #include "support/StringUtils.h"
15
15
 
16
16
  #include "CommonToken.h"
17
17
 
@@ -165,9 +165,7 @@ std::string CommonToken::toString(Recognizer *r) const {
165
165
  }
166
166
  std::string txt = getText();
167
167
  if (!txt.empty()) {
168
- antlrcpp::replaceAll(txt, "\n", "\\n");
169
- antlrcpp::replaceAll(txt, "\r", "\\r");
170
- antlrcpp::replaceAll(txt, "\t", "\\t");
168
+ txt = antlrcpp::escapeWhitespace(txt);
171
169
  } else {
172
170
  txt = "<no text>";
173
171
  }
@@ -12,10 +12,11 @@
12
12
  #include "atn/RuleTransition.h"
13
13
  #include "atn/ATN.h"
14
14
  #include "atn/ATNState.h"
15
+ #include "support/StringUtils.h"
16
+ #include "support/Casts.h"
15
17
  #include "Parser.h"
16
18
  #include "CommonToken.h"
17
19
  #include "Vocabulary.h"
18
- #include "support/StringUtils.h"
19
20
 
20
21
  #include "DefaultErrorStrategy.h"
21
22
 
@@ -106,10 +107,10 @@ void DefaultErrorStrategy::sync(Parser *recognizer) {
106
107
  }
107
108
 
108
109
  switch (s->getStateType()) {
109
- case atn::ATNState::BLOCK_START:
110
- case atn::ATNState::STAR_BLOCK_START:
111
- case atn::ATNState::PLUS_BLOCK_START:
112
- case atn::ATNState::STAR_LOOP_ENTRY:
110
+ case atn::ATNStateType::BLOCK_START:
111
+ case atn::ATNStateType::STAR_BLOCK_START:
112
+ case atn::ATNStateType::PLUS_BLOCK_START:
113
+ case atn::ATNStateType::STAR_LOOP_ENTRY:
113
114
  // report error and recover if possible
114
115
  if (singleTokenDeletion(recognizer) != nullptr) {
115
116
  return;
@@ -117,8 +118,8 @@ void DefaultErrorStrategy::sync(Parser *recognizer) {
117
118
 
118
119
  throw InputMismatchException(recognizer);
119
120
 
120
- case atn::ATNState::PLUS_LOOP_BACK:
121
- case atn::ATNState::STAR_LOOP_BACK: {
121
+ case atn::ATNStateType::PLUS_LOOP_BACK:
122
+ case atn::ATNStateType::STAR_LOOP_BACK: {
122
123
  reportUnwantedToken(recognizer);
123
124
  misc::IntervalSet expecting = recognizer->getExpectedTokens();
124
125
  misc::IntervalSet whatFollowsLoopIterationOrRule = expecting.Or(getErrorRecoverySet(recognizer));
@@ -292,11 +293,13 @@ size_t DefaultErrorStrategy::getSymbolType(Token *symbol) {
292
293
  }
293
294
 
294
295
  std::string DefaultErrorStrategy::escapeWSAndQuote(const std::string &s) const {
295
- std::string result = s;
296
- antlrcpp::replaceAll(result, "\n", "\\n");
297
- antlrcpp::replaceAll(result, "\r","\\r");
298
- antlrcpp::replaceAll(result, "\t","\\t");
299
- return "'" + result + "'";
296
+ std::string result;
297
+ result.reserve(s.size() + 2);
298
+ result.push_back('\'');
299
+ antlrcpp::escapeWhitespace(result, s);
300
+ result.push_back('\'');
301
+ result.shrink_to_fit();
302
+ return result;
300
303
  }
301
304
 
302
305
  misc::IntervalSet DefaultErrorStrategy::getErrorRecoverySet(Parser *recognizer) {
@@ -306,7 +309,7 @@ misc::IntervalSet DefaultErrorStrategy::getErrorRecoverySet(Parser *recognizer)
306
309
  while (ctx->invokingState != ATNState::INVALID_STATE_NUMBER) {
307
310
  // compute what follows who invoked us
308
311
  atn::ATNState *invokingState = atn.states[ctx->invokingState];
309
- atn::RuleTransition *rt = dynamic_cast<atn::RuleTransition*>(invokingState->transitions[0]);
312
+ const atn::RuleTransition *rt = downCast<const atn::RuleTransition*>(invokingState->transitions[0].get());
310
313
  misc::IntervalSet follow = atn.nextTokens(rt->followState);
311
314
  recoverSet.addAll(follow);
312
315
 
@@ -10,7 +10,7 @@ using namespace antlr4;
10
10
  RuntimeException::RuntimeException(const std::string &msg) : std::exception(), _message(msg) {
11
11
  }
12
12
 
13
- const char* RuntimeException::what() const NOEXCEPT {
13
+ const char* RuntimeException::what() const noexcept {
14
14
  return _message.c_str();
15
15
  }
16
16
 
@@ -19,7 +19,7 @@ const char* RuntimeException::what() const NOEXCEPT {
19
19
  IOException::IOException(const std::string &msg) : std::exception(), _message(msg) {
20
20
  }
21
21
 
22
- const char* IOException::what() const NOEXCEPT {
22
+ const char* IOException::what() const noexcept {
23
23
  return _message.c_str();
24
24
  }
25
25
 
@@ -16,7 +16,7 @@ namespace antlr4 {
16
16
  public:
17
17
  RuntimeException(const std::string &msg = "");
18
18
 
19
- virtual const char* what() const NOEXCEPT override;
19
+ virtual const char* what() const noexcept override;
20
20
  };
21
21
 
22
22
  class ANTLR4CPP_PUBLIC IllegalStateException : public RuntimeException {
@@ -77,7 +77,7 @@ namespace antlr4 {
77
77
  public:
78
78
  IOException(const std::string &msg = "");
79
79
 
80
- virtual const char* what() const NOEXCEPT override;
80
+ virtual const char* what() const noexcept override;
81
81
  };
82
82
 
83
83
  class ANTLR4CPP_PUBLIC CancellationException : public IllegalStateException {
@@ -8,6 +8,7 @@
8
8
  #include "atn/PredicateTransition.h"
9
9
  #include "atn/ATN.h"
10
10
  #include "atn/ATNState.h"
11
+ #include "support/Casts.h"
11
12
  #include "support/CPPUtils.h"
12
13
 
13
14
  #include "FailedPredicateException.h"
@@ -26,10 +27,10 @@ FailedPredicateException::FailedPredicateException(Parser *recognizer, const std
26
27
  recognizer->getInputStream(), recognizer->getContext(), recognizer->getCurrentToken()) {
27
28
 
28
29
  atn::ATNState *s = recognizer->getInterpreter<atn::ATNSimulator>()->atn.states[recognizer->getState()];
29
- atn::Transition *transition = s->transitions[0];
30
- if (is<atn::PredicateTransition*>(transition)) {
31
- _ruleIndex = static_cast<atn::PredicateTransition *>(transition)->ruleIndex;
32
- _predicateIndex = static_cast<atn::PredicateTransition *>(transition)->predIndex;
30
+ const atn::Transition *transition = s->transitions[0].get();
31
+ if (transition->getTransitionType() == atn::TransitionType::PREDICATE) {
32
+ _ruleIndex = downCast<const atn::PredicateTransition&>(*transition).getRuleIndex();
33
+ _predicateIndex = downCast<const atn::PredicateTransition&>(*transition).getPredIndex();
33
34
  } else {
34
35
  _ruleIndex = 0;
35
36
  _predicateIndex = 0;
@@ -15,7 +15,7 @@ namespace antlr4 {
15
15
  /// prediction.
16
16
  class ANTLR4CPP_PUBLIC FailedPredicateException : public RecognitionException {
17
17
  public:
18
- FailedPredicateException(Parser *recognizer);
18
+ explicit FailedPredicateException(Parser *recognizer);
19
19
  FailedPredicateException(Parser *recognizer, const std::string &predicate);
20
20
  FailedPredicateException(Parser *recognizer, const std::string &predicate, const std::string &message);
21
21
 
@@ -27,13 +27,7 @@ namespace antlr4 {
27
27
  /// </summary>
28
28
  class ANTLR4CPP_PUBLIC IntStream {
29
29
  public:
30
- #if __cplusplus >= 201703L
31
30
  static constexpr size_t EOF = std::numeric_limits<size_t>::max();
32
- #else
33
- enum : size_t {
34
- EOF = static_cast<size_t>(-1), // std::numeric_limits<size_t>::max(); doesn't work in VS 2013
35
- };
36
- #endif
37
31
 
38
32
  /// The value returned by <seealso cref="#LA LA()"/> when the end of the stream is
39
33
  /// reached.
@@ -11,7 +11,6 @@
11
11
  #include "ANTLRErrorListener.h"
12
12
  #include "support/CPPUtils.h"
13
13
  #include "CommonToken.h"
14
- #include "support/StringUtils.h"
15
14
 
16
15
  #include "Lexer.h"
17
16
 
@@ -18,7 +18,6 @@ namespace antlr4 {
18
18
  /// of speed.
19
19
  class ANTLR4CPP_PUBLIC Lexer : public Recognizer, public TokenSource {
20
20
  public:
21
- #if __cplusplus >= 201703L
22
21
  static constexpr size_t DEFAULT_MODE = 0;
23
22
  static constexpr size_t MORE = std::numeric_limits<size_t>::max() - 1;
24
23
  static constexpr size_t SKIP = std::numeric_limits<size_t>::max() - 2;
@@ -27,18 +26,6 @@ namespace antlr4 {
27
26
  static constexpr size_t HIDDEN = Token::HIDDEN_CHANNEL;
28
27
  static constexpr size_t MIN_CHAR_VALUE = 0;
29
28
  static constexpr size_t MAX_CHAR_VALUE = 0x10FFFF;
30
- #else
31
- enum : size_t {
32
- DEFAULT_MODE = 0,
33
- MORE = static_cast<size_t>(-2), // std::numeric_limits<size_t>::max() - 1; doesn't work in VS 2013
34
- SKIP = static_cast<size_t>(-3), // std::numeric_limits<size_t>::max() - 2; doesn't work in VS 2013
35
-
36
- DEFAULT_TOKEN_CHANNEL = Token::DEFAULT_CHANNEL,
37
- HIDDEN = Token::HIDDEN_CHANNEL,
38
- MIN_CHAR_VALUE = 0,
39
- MAX_CHAR_VALUE = 0x10FFFF,
40
- };
41
- #endif
42
29
 
43
30
  CharStream *_input; // Pure reference, usually from statically allocated instance.
44
31
 
@@ -6,7 +6,6 @@
6
6
  #include "atn/ATNType.h"
7
7
  #include "atn/LexerATNSimulator.h"
8
8
  #include "dfa/DFA.h"
9
- #include "atn/EmptyPredictionContext.h"
10
9
  #include "Exceptions.h"
11
10
  #include "Vocabulary.h"
12
11
 
@@ -14,12 +13,6 @@
14
13
 
15
14
  using namespace antlr4;
16
15
 
17
- LexerInterpreter::LexerInterpreter(const std::string &grammarFileName, const std::vector<std::string> &tokenNames,
18
- const std::vector<std::string> &ruleNames, const std::vector<std::string> &channelNames, const std::vector<std::string> &modeNames,
19
- const atn::ATN &atn, CharStream *input)
20
- : LexerInterpreter(grammarFileName, dfa::Vocabulary::fromTokenNames(tokenNames), ruleNames, channelNames, modeNames, atn, input) {
21
- }
22
-
23
16
  LexerInterpreter::LexerInterpreter(const std::string &grammarFileName, const dfa::Vocabulary &vocabulary,
24
17
  const std::vector<std::string> &ruleNames, const std::vector<std::string> &channelNames, const std::vector<std::string> &modeNames,
25
18
  const atn::ATN &atn, CharStream *input)
@@ -31,10 +24,6 @@ LexerInterpreter::LexerInterpreter(const std::string &grammarFileName, const dfa
31
24
  throw IllegalArgumentException("The ATN must be a lexer ATN.");
32
25
  }
33
26
 
34
- for (size_t i = 0; i < atn.maxTokenType; i++) {
35
- _tokenNames.push_back(vocabulary.getDisplayName(i));
36
- }
37
-
38
27
  for (size_t i = 0; i < atn.getNumberOfDecisions(); ++i) {
39
28
  _decisionToDFA.push_back(dfa::DFA(_atn.getDecisionState(i), i));
40
29
  }
@@ -54,10 +43,6 @@ std::string LexerInterpreter::getGrammarFileName() const {
54
43
  return _grammarFileName;
55
44
  }
56
45
 
57
- const std::vector<std::string>& LexerInterpreter::getTokenNames() const {
58
- return _tokenNames;
59
- }
60
-
61
46
  const std::vector<std::string>& LexerInterpreter::getRuleNames() const {
62
47
  return _ruleNames;
63
48
  }
@@ -7,16 +7,13 @@
7
7
 
8
8
  #include "Lexer.h"
9
9
  #include "atn/PredictionContext.h"
10
+ #include "atn/PredictionContextCache.h"
10
11
  #include "Vocabulary.h"
11
12
 
12
13
  namespace antlr4 {
13
14
 
14
15
  class ANTLR4CPP_PUBLIC LexerInterpreter : public Lexer {
15
16
  public:
16
- // @deprecated
17
- LexerInterpreter(const std::string &grammarFileName, const std::vector<std::string> &tokenNames,
18
- const std::vector<std::string> &ruleNames, const std::vector<std::string> &channelNames,
19
- const std::vector<std::string> &modeNames, const atn::ATN &atn, CharStream *input);
20
17
  LexerInterpreter(const std::string &grammarFileName, const dfa::Vocabulary &vocabulary,
21
18
  const std::vector<std::string> &ruleNames, const std::vector<std::string> &channelNames,
22
19
  const std::vector<std::string> &modeNames, const atn::ATN &atn, CharStream *input);
@@ -25,7 +22,6 @@ namespace antlr4 {
25
22
 
26
23
  virtual const atn::ATN& getATN() const override;
27
24
  virtual std::string getGrammarFileName() const override;
28
- virtual const std::vector<std::string>& getTokenNames() const override;
29
25
  virtual const std::vector<std::string>& getRuleNames() const override;
30
26
  virtual const std::vector<std::string>& getChannelNames() const override;
31
27
  virtual const std::vector<std::string>& getModeNames() const override;
@@ -36,8 +32,6 @@ namespace antlr4 {
36
32
  const std::string _grammarFileName;
37
33
  const atn::ATN &_atn;
38
34
 
39
- // @deprecated
40
- std::vector<std::string> _tokenNames;
41
35
  const std::vector<std::string> &_ruleNames;
42
36
  const std::vector<std::string> &_channelNames;
43
37
  const std::vector<std::string> &_modeNames;