antlr4ruby 0.1.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 (285) hide show
  1. checksums.yaml +7 -0
  2. data/.rspec +3 -0
  3. data/.standard.yml +3 -0
  4. data/CHANGELOG.md +5 -0
  5. data/CODE_OF_CONDUCT.md +84 -0
  6. data/Gemfile +12 -0
  7. data/Gemfile.lock +65 -0
  8. data/LICENSE +21 -0
  9. data/LICENSE.txt +21 -0
  10. data/README.md +39 -0
  11. data/Rakefile +10 -0
  12. data/lib/antlr4ruby/atn/action/lexer_action_executor.rb +75 -0
  13. data/lib/antlr4ruby/atn/action/lexer_action_type.rb +6 -0
  14. data/lib/antlr4ruby/atn/action/lexer_channel_action.rb +41 -0
  15. data/lib/antlr4ruby/atn/action/lexer_custom_action.rb +43 -0
  16. data/lib/antlr4ruby/atn/action/lexer_indexed_custom_action.rb +43 -0
  17. data/lib/antlr4ruby/atn/action/lexer_mode_action.rb +45 -0
  18. data/lib/antlr4ruby/atn/action/lexer_more_action.rb +34 -0
  19. data/lib/antlr4ruby/atn/action/lexer_pop_mode_action.rb +32 -0
  20. data/lib/antlr4ruby/atn/action/lexer_push_mode_action.rb +43 -0
  21. data/lib/antlr4ruby/atn/action/lexer_skip_action.rb +33 -0
  22. data/lib/antlr4ruby/atn/action/lexer_type_action.rb +42 -0
  23. data/lib/antlr4ruby/atn/atn.rb +43 -0
  24. data/lib/antlr4ruby/atn/atn_deserialization_options.rb +49 -0
  25. data/lib/antlr4ruby/atn/atn_deserializer.rb +429 -0
  26. data/lib/antlr4ruby/atn/atn_serializer.rb +4 -0
  27. data/lib/antlr4ruby/atn/atn_simulator.rb +36 -0
  28. data/lib/antlr4ruby/atn/atn_type.rb +6 -0
  29. data/lib/antlr4ruby/atn/config/atn_config.rb +46 -0
  30. data/lib/antlr4ruby/atn/config/atn_config_set.rb +5 -0
  31. data/lib/antlr4ruby/atn/config/lexer_atn_config.rb +47 -0
  32. data/lib/antlr4ruby/atn/config/ordered_atn_config_set.rb +4 -0
  33. data/lib/antlr4ruby/atn/context/array_prediction_context.rb +29 -0
  34. data/lib/antlr4ruby/atn/context/empty_prediction_context.rb +36 -0
  35. data/lib/antlr4ruby/atn/context/prediction_context.rb +111 -0
  36. data/lib/antlr4ruby/atn/context/prediction_context_cache.rb +17 -0
  37. data/lib/antlr4ruby/atn/context/semantic_context.rb +74 -0
  38. data/lib/antlr4ruby/atn/context/singleton_prediction_context.rb +36 -0
  39. data/lib/antlr4ruby/atn/info/accept_state_info.rb +26 -0
  40. data/lib/antlr4ruby/atn/info/ambiguity_info.rb +13 -0
  41. data/lib/antlr4ruby/atn/info/conflict_info.rb +39 -0
  42. data/lib/antlr4ruby/atn/info/context_sensitivity_info.rb +10 -0
  43. data/lib/antlr4ruby/atn/info/decision_event_info.rb +14 -0
  44. data/lib/antlr4ruby/atn/info/decision_info.rb +25 -0
  45. data/lib/antlr4ruby/atn/info/error_info.rb +9 -0
  46. data/lib/antlr4ruby/atn/info/lookahead_event_info.rb +12 -0
  47. data/lib/antlr4ruby/atn/info/parse_info.rb +18 -0
  48. data/lib/antlr4ruby/atn/info/predicate_eval_info.rb +5 -0
  49. data/lib/antlr4ruby/atn/lexer_atn_simulator.rb +150 -0
  50. data/lib/antlr4ruby/atn/ll1_analyzer.rb +4 -0
  51. data/lib/antlr4ruby/atn/parser_atn_simulator.rb +4 -0
  52. data/lib/antlr4ruby/atn/prediction_mode.rb +5 -0
  53. data/lib/antlr4ruby/atn/profiling_atn_simulator.rb +5 -0
  54. data/lib/antlr4ruby/atn/state/atn_state.rb +109 -0
  55. data/lib/antlr4ruby/atn/state/basic_block_start_state.rb +12 -0
  56. data/lib/antlr4ruby/atn/state/basic_state.rb +13 -0
  57. data/lib/antlr4ruby/atn/state/block_end_state.rb +13 -0
  58. data/lib/antlr4ruby/atn/state/block_start_state.rb +14 -0
  59. data/lib/antlr4ruby/atn/state/decision_state.rb +17 -0
  60. data/lib/antlr4ruby/atn/state/invalid_state.rb +12 -0
  61. data/lib/antlr4ruby/atn/state/loop_end_state.rb +14 -0
  62. data/lib/antlr4ruby/atn/state/plus_block_start_state.rb +11 -0
  63. data/lib/antlr4ruby/atn/state/plus_loopback_state.rb +10 -0
  64. data/lib/antlr4ruby/atn/state/rule_start_state.rb +10 -0
  65. data/lib/antlr4ruby/atn/state/rule_stop_state.rb +9 -0
  66. data/lib/antlr4ruby/atn/state/simulator_state.rb +17 -0
  67. data/lib/antlr4ruby/atn/state/star_block_start_state.rb +8 -0
  68. data/lib/antlr4ruby/atn/state/star_loop_entry_state.rb +15 -0
  69. data/lib/antlr4ruby/atn/state/star_loopback_state.rb +10 -0
  70. data/lib/antlr4ruby/atn/state/tokens_start_state.rb +10 -0
  71. data/lib/antlr4ruby/atn/transition/abstract_predicate_transition.rb +11 -0
  72. data/lib/antlr4ruby/atn/transition/action_transition.rb +36 -0
  73. data/lib/antlr4ruby/atn/transition/atom_transition.rb +29 -0
  74. data/lib/antlr4ruby/atn/transition/code_point_transitions.rb +7 -0
  75. data/lib/antlr4ruby/atn/transition/epsilon_transition.rb +35 -0
  76. data/lib/antlr4ruby/atn/transition/not_set_transition.rb +23 -0
  77. data/lib/antlr4ruby/atn/transition/precedence_predicate_transition.rb +34 -0
  78. data/lib/antlr4ruby/atn/transition/predicate_transition.rb +29 -0
  79. data/lib/antlr4ruby/atn/transition/range_transition.rb +30 -0
  80. data/lib/antlr4ruby/atn/transition/rule_transition.rb +29 -0
  81. data/lib/antlr4ruby/atn/transition/set_transition.rb +31 -0
  82. data/lib/antlr4ruby/atn/transition/transition.rb +63 -0
  83. data/lib/antlr4ruby/atn/transition/wildcard_transition.rb +21 -0
  84. data/lib/antlr4ruby/bail_error_strategy.rb +28 -0
  85. data/lib/antlr4ruby/base_error_listener.rb +14 -0
  86. data/lib/antlr4ruby/buffered_token_stream.rb +115 -0
  87. data/lib/antlr4ruby/char_streams.rb +34 -0
  88. data/lib/antlr4ruby/code_point_buffer.rb +31 -0
  89. data/lib/antlr4ruby/code_point_char_stream.rb +88 -0
  90. data/lib/antlr4ruby/common_token.rb +113 -0
  91. data/lib/antlr4ruby/common_token_factory.rb +39 -0
  92. data/lib/antlr4ruby/common_token_stream.rb +62 -0
  93. data/lib/antlr4ruby/console_error_listener.rb +10 -0
  94. data/lib/antlr4ruby/default_error_strategy.rb +108 -0
  95. data/lib/antlr4ruby/dfa/dfa.rb +67 -0
  96. data/lib/antlr4ruby/dfa/dfa_serializer.rb +28 -0
  97. data/lib/antlr4ruby/dfa/dfa_state.rb +80 -0
  98. data/lib/antlr4ruby/dfa/lexer_dfa_serializer.rb +12 -0
  99. data/lib/antlr4ruby/diagnostic_error_listener.rb +18 -0
  100. data/lib/antlr4ruby/exception/failed_predicate_exception.rb +27 -0
  101. data/lib/antlr4ruby/exception/input_mismatch_exception.rb +16 -0
  102. data/lib/antlr4ruby/exception/lexer_no_viable_alt_exception.rb +36 -0
  103. data/lib/antlr4ruby/exception/no_viable_alt_exception.rb +29 -0
  104. data/lib/antlr4ruby/exception/parse_cancellation_exception.rb +10 -0
  105. data/lib/antlr4ruby/exception/recognition_exception.rb +55 -0
  106. data/lib/antlr4ruby/int_stream.rb +11 -0
  107. data/lib/antlr4ruby/interpreter_rule_context.rb +19 -0
  108. data/lib/antlr4ruby/lexer.rb +180 -0
  109. data/lib/antlr4ruby/lexer_interpreter.rb +5 -0
  110. data/lib/antlr4ruby/list_token_source.rb +6 -0
  111. data/lib/antlr4ruby/misc/bit_set.rb +9 -0
  112. data/lib/antlr4ruby/misc/double_key_map.rb +28 -0
  113. data/lib/antlr4ruby/misc/integer_stack.rb +9 -0
  114. data/lib/antlr4ruby/misc/murmur_hash.rb +75 -0
  115. data/lib/antlr4ruby/misc/pair.rb +18 -0
  116. data/lib/antlr4ruby/misc/range_set.rb +223 -0
  117. data/lib/antlr4ruby/parser.rb +225 -0
  118. data/lib/antlr4ruby/parser_interpreter.rb +25 -0
  119. data/lib/antlr4ruby/parser_rule_context.rb +161 -0
  120. data/lib/antlr4ruby/proxy_error_listener.rb +33 -0
  121. data/lib/antlr4ruby/recognizer.rb +133 -0
  122. data/lib/antlr4ruby/rule_context.rb +109 -0
  123. data/lib/antlr4ruby/rule_context_with_alt_num.rb +22 -0
  124. data/lib/antlr4ruby/runtime_meta_data.rb +40 -0
  125. data/lib/antlr4ruby/token.rb +10 -0
  126. data/lib/antlr4ruby/token_stream_rewriter.rb +5 -0
  127. data/lib/antlr4ruby/tree/abstract_parse_tree_visitor.rb +56 -0
  128. data/lib/antlr4ruby/tree/error_node.rb +15 -0
  129. data/lib/antlr4ruby/tree/iterative_parse_tree_walker.rb +10 -0
  130. data/lib/antlr4ruby/tree/parse_tree_property.rb +6 -0
  131. data/lib/antlr4ruby/tree/parse_tree_walker.rb +38 -0
  132. data/lib/antlr4ruby/tree/terminal_node.rb +79 -0
  133. data/lib/antlr4ruby/tree/trees.rb +161 -0
  134. data/lib/antlr4ruby/unbuffered_char_stream.rb +7 -0
  135. data/lib/antlr4ruby/unbuffered_token_stream.rb +8 -0
  136. data/lib/antlr4ruby/version.rb +5 -0
  137. data/lib/antlr4ruby/vocabulary.rb +73 -0
  138. data/lib/antlr4ruby.rb +8 -0
  139. data/lib/example/Hello.g4 +9 -0
  140. data/lib/example/hello_lexer.rb +80 -0
  141. data/lib/example/hello_lexer.rbs +37 -0
  142. data/lib/main.rb +14 -0
  143. data/sig/antlr4ruby/antlr_error_listener.rbs +23 -0
  144. data/sig/antlr4ruby/antlr_error_strategy.rbs +13 -0
  145. data/sig/antlr4ruby/atn/action/lexer_action.rbs +10 -0
  146. data/sig/antlr4ruby/atn/action/lexer_action_executor.rbs +22 -0
  147. data/sig/antlr4ruby/atn/action/lexer_action_type.rbs +6 -0
  148. data/sig/antlr4ruby/atn/action/lexer_channel_action.rbs +15 -0
  149. data/sig/antlr4ruby/atn/action/lexer_custom_action.rbs +17 -0
  150. data/sig/antlr4ruby/atn/action/lexer_indexed_custom_action.rbs +19 -0
  151. data/sig/antlr4ruby/atn/action/lexer_mode_action.rbs +16 -0
  152. data/sig/antlr4ruby/atn/action/lexer_more_action.rbs +9 -0
  153. data/sig/antlr4ruby/atn/action/lexer_pop_mode_action.rbs +10 -0
  154. data/sig/antlr4ruby/atn/action/lexer_push_mode_action.rbs +16 -0
  155. data/sig/antlr4ruby/atn/action/lexer_skip_action.rbs +10 -0
  156. data/sig/antlr4ruby/atn/action/lexer_type_action.rbs +12 -0
  157. data/sig/antlr4ruby/atn/atn.rbs +32 -0
  158. data/sig/antlr4ruby/atn/atn_deserialization_options.rbs +27 -0
  159. data/sig/antlr4ruby/atn/atn_deserializer.rbs +26 -0
  160. data/sig/antlr4ruby/atn/atn_serializer.rbs +5 -0
  161. data/sig/antlr4ruby/atn/atn_simulator.rbs +19 -0
  162. data/sig/antlr4ruby/atn/atn_type.rbs +7 -0
  163. data/sig/antlr4ruby/atn/config/atn_config.rbs +21 -0
  164. data/sig/antlr4ruby/atn/config/atn_config_set.rbs +5 -0
  165. data/sig/antlr4ruby/atn/config/lexer_atn_config.rbs +19 -0
  166. data/sig/antlr4ruby/atn/config/ordered_atn_config_set.rbs +5 -0
  167. data/sig/antlr4ruby/atn/context/array_prediction_context.rbs +11 -0
  168. data/sig/antlr4ruby/atn/context/empty_prediction_context.rbs +6 -0
  169. data/sig/antlr4ruby/atn/context/prediction_context.rbs +52 -0
  170. data/sig/antlr4ruby/atn/context/prediction_context_cache.rbs +12 -0
  171. data/sig/antlr4ruby/atn/context/semantic_context.rbs +36 -0
  172. data/sig/antlr4ruby/atn/context/singleton_prediction_context.rbs +11 -0
  173. data/sig/antlr4ruby/atn/info/accept_state_info.rbs +15 -0
  174. data/sig/antlr4ruby/atn/info/ambiguity_info.rbs +8 -0
  175. data/sig/antlr4ruby/atn/info/conflict_info.rbs +16 -0
  176. data/sig/antlr4ruby/atn/info/context_sensitivity_info.rbs +5 -0
  177. data/sig/antlr4ruby/atn/info/decision_event_info.rbs +14 -0
  178. data/sig/antlr4ruby/atn/info/decision_info.rbs +29 -0
  179. data/sig/antlr4ruby/atn/info/error_info.rbs +5 -0
  180. data/sig/antlr4ruby/atn/info/lookahead_event_info.rbs +8 -0
  181. data/sig/antlr4ruby/atn/info/parse_info.rbs +8 -0
  182. data/sig/antlr4ruby/atn/info/predicate_eval_info.rbs +6 -0
  183. data/sig/antlr4ruby/atn/lexer_atn_simulator.rbs +83 -0
  184. data/sig/antlr4ruby/atn/ll1_analyzer.rbs +5 -0
  185. data/sig/antlr4ruby/atn/parser_atn_simulator.rbs +5 -0
  186. data/sig/antlr4ruby/atn/prediction_mode.rbs +6 -0
  187. data/sig/antlr4ruby/atn/profiling_atn_simulator.rbs +6 -0
  188. data/sig/antlr4ruby/atn/state/atn_state.rbs +50 -0
  189. data/sig/antlr4ruby/atn/state/basic_block_start_state.rbs +6 -0
  190. data/sig/antlr4ruby/atn/state/basic_state.rbs +7 -0
  191. data/sig/antlr4ruby/atn/state/block_end_state.rbs +7 -0
  192. data/sig/antlr4ruby/atn/state/block_start_state.rbs +8 -0
  193. data/sig/antlr4ruby/atn/state/decision_state.rbs +14 -0
  194. data/sig/antlr4ruby/atn/state/invalid_state.rbs +7 -0
  195. data/sig/antlr4ruby/atn/state/loop_end_state.rbs +7 -0
  196. data/sig/antlr4ruby/atn/state/plus_block_start_state.rbs +6 -0
  197. data/sig/antlr4ruby/atn/state/plus_loopback_state.rbs +6 -0
  198. data/sig/antlr4ruby/atn/state/rule_start_state.rbs +7 -0
  199. data/sig/antlr4ruby/atn/state/rule_stop_state.rbs +6 -0
  200. data/sig/antlr4ruby/atn/state/simulator_state.rbs +12 -0
  201. data/sig/antlr4ruby/atn/state/star_block_start_state.rbs +6 -0
  202. data/sig/antlr4ruby/atn/state/star_loop_entry_state.rbs +8 -0
  203. data/sig/antlr4ruby/atn/state/star_loopback_state.rbs +5 -0
  204. data/sig/antlr4ruby/atn/state/tokens_start_state.rbs +6 -0
  205. data/sig/antlr4ruby/atn/transition/abstract_predicate_transition.rbs +10 -0
  206. data/sig/antlr4ruby/atn/transition/action_transition.rbs +15 -0
  207. data/sig/antlr4ruby/atn/transition/atom_transition.rbs +10 -0
  208. data/sig/antlr4ruby/atn/transition/code_point_transitions.rbs +5 -0
  209. data/sig/antlr4ruby/atn/transition/epsilon_transition.rbs +12 -0
  210. data/sig/antlr4ruby/atn/transition/not_set_transition.rbs +7 -0
  211. data/sig/antlr4ruby/atn/transition/precedence_predicate_transition.rbs +10 -0
  212. data/sig/antlr4ruby/atn/transition/predicate_transition.rbs +11 -0
  213. data/sig/antlr4ruby/atn/transition/range_transition.rbs +8 -0
  214. data/sig/antlr4ruby/atn/transition/rule_transition.rbs +10 -0
  215. data/sig/antlr4ruby/atn/transition/set_transition.rbs +8 -0
  216. data/sig/antlr4ruby/atn/transition/transition.rbs +40 -0
  217. data/sig/antlr4ruby/atn/transition/wildcard_transition.rbs +5 -0
  218. data/sig/antlr4ruby/bail_error_strategy.rbs +7 -0
  219. data/sig/antlr4ruby/base_error_listener.rbs +6 -0
  220. data/sig/antlr4ruby/buffered_token_stream.rbs +48 -0
  221. data/sig/antlr4ruby/char_stream.rbs +9 -0
  222. data/sig/antlr4ruby/char_streams.rbs +14 -0
  223. data/sig/antlr4ruby/code_point_buffer.rbs +20 -0
  224. data/sig/antlr4ruby/code_point_char_stream.rbs +19 -0
  225. data/sig/antlr4ruby/common_token.rbs +35 -0
  226. data/sig/antlr4ruby/common_token_factory.rbs +12 -0
  227. data/sig/antlr4ruby/common_token_stream.rbs +9 -0
  228. data/sig/antlr4ruby/console_error_listener.rbs +6 -0
  229. data/sig/antlr4ruby/default_error_strategy.rbs +56 -0
  230. data/sig/antlr4ruby/dfa/dfa.rbs +29 -0
  231. data/sig/antlr4ruby/dfa/dfa_serializer.rbs +11 -0
  232. data/sig/antlr4ruby/dfa/dfa_state.rbs +50 -0
  233. data/sig/antlr4ruby/dfa/lexer_dfa_serializer.rbs +5 -0
  234. data/sig/antlr4ruby/diagnostic_error_listener.rbs +10 -0
  235. data/sig/antlr4ruby/exception/failed_predicate_exception.rbs +23 -0
  236. data/sig/antlr4ruby/exception/input_mismatch_exception.rbs +7 -0
  237. data/sig/antlr4ruby/exception/lexer_no_viable_alt_exception.rbs +15 -0
  238. data/sig/antlr4ruby/exception/no_viable_alt_exception.rbs +14 -0
  239. data/sig/antlr4ruby/exception/recognition_exception.rbs +30 -0
  240. data/sig/antlr4ruby/int_stream.rbs +19 -0
  241. data/sig/antlr4ruby/interpreter_rule_context.rbs +6 -0
  242. data/sig/antlr4ruby/lexer.rbs +88 -0
  243. data/sig/antlr4ruby/lexer_interpreter.rbs +5 -0
  244. data/sig/antlr4ruby/list_token_source.rbs +6 -0
  245. data/sig/antlr4ruby/misc/bit_set.rbs +6 -0
  246. data/sig/antlr4ruby/misc/double_key_map.rbs +11 -0
  247. data/sig/antlr4ruby/misc/equality_comparator.rbs +7 -0
  248. data/sig/antlr4ruby/misc/int_set.rbs +29 -0
  249. data/sig/antlr4ruby/misc/integer_stack.rbs +9 -0
  250. data/sig/antlr4ruby/misc/murmur_hash.rbs +13 -0
  251. data/sig/antlr4ruby/misc/pair.rbs +15 -0
  252. data/sig/antlr4ruby/misc/predicate.rbs +7 -0
  253. data/sig/antlr4ruby/misc/range_set.rbs +49 -0
  254. data/sig/antlr4ruby/parser.rbs +109 -0
  255. data/sig/antlr4ruby/parser_interpreter.rbs +24 -0
  256. data/sig/antlr4ruby/parser_rule_context.rbs +53 -0
  257. data/sig/antlr4ruby/proxy_error_listener.rbs +10 -0
  258. data/sig/antlr4ruby/recognizer.rbs +76 -0
  259. data/sig/antlr4ruby/rule_context.rbs +31 -0
  260. data/sig/antlr4ruby/rule_context_with_alt_num.rbs +8 -0
  261. data/sig/antlr4ruby/runtime_meta_data.rbs +12 -0
  262. data/sig/antlr4ruby/token.rbs +26 -0
  263. data/sig/antlr4ruby/token_factory.rbs +10 -0
  264. data/sig/antlr4ruby/token_source.rbs +12 -0
  265. data/sig/antlr4ruby/token_stream.rbs +13 -0
  266. data/sig/antlr4ruby/token_stream_rewriter.rbs +5 -0
  267. data/sig/antlr4ruby/tree/abstract_parse_tree_visitor.rbs +14 -0
  268. data/sig/antlr4ruby/tree/error_node.rbs +13 -0
  269. data/sig/antlr4ruby/tree/iterative_parse_tree_walker.rbs +7 -0
  270. data/sig/antlr4ruby/tree/parse_tree.rbs +21 -0
  271. data/sig/antlr4ruby/tree/parse_tree_listener.rbs +13 -0
  272. data/sig/antlr4ruby/tree/parse_tree_property.rbs +5 -0
  273. data/sig/antlr4ruby/tree/parse_tree_visitor.rbs +12 -0
  274. data/sig/antlr4ruby/tree/parse_tree_walker.rbs +12 -0
  275. data/sig/antlr4ruby/tree/rule_node.rbs +8 -0
  276. data/sig/antlr4ruby/tree/syntax_tree.rbs +8 -0
  277. data/sig/antlr4ruby/tree/terminal_node.rbs +20 -0
  278. data/sig/antlr4ruby/tree/tree.rbs +15 -0
  279. data/sig/antlr4ruby/tree/trees.rbs +32 -0
  280. data/sig/antlr4ruby/unbuffered_char_stream.rbs +6 -0
  281. data/sig/antlr4ruby/unbuffered_token_stream.rbs +6 -0
  282. data/sig/antlr4ruby/vocabulary.rbs +36 -0
  283. data/sig/antlr4ruby/writable_token.rbs +13 -0
  284. data/sig/antlr4ruby.rbs +4 -0
  285. metadata +328 -0
@@ -0,0 +1,15 @@
1
+
2
+ module Antlr4ruby
3
+ class LexerNoViableAltException < RecognitionException
4
+ attr_reader start_index: Integer
5
+ attr_reader dead_end_configs: ATNConfigSet
6
+
7
+ def initialize: (Lexer, _CharStream, Integer, ATNConfigSet) -> void
8
+
9
+ def get_dead_end_configs: -> ATNConfigSet
10
+
11
+ def get_start_index: -> Integer
12
+
13
+ def get_input_stream: -> _CharStream
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+
2
+ module Antlr4ruby
3
+ class NoViableAltException < RecognitionException
4
+ attr_reader start_token: _Token
5
+ attr_reader dead_end_configs: ATNConfigSet?
6
+
7
+ def initialize: (Parser, _TokenStream?, _Token?, _Token?, ATNConfigSet?, ParserRuleContext?) -> void
8
+
9
+ def get_dead_end_configs: -> ATNConfigSet?
10
+
11
+ def get_start_token: -> _Token
12
+
13
+ end
14
+ end
@@ -0,0 +1,30 @@
1
+
2
+ module Antlr4ruby
3
+ # todo 继承运行时异常
4
+ class RecognitionException
5
+ attr_reader ctx: RuleContext
6
+
7
+ attr_reader input: _IntStream
8
+ attr_accessor offending_state: Integer
9
+ attr_accessor offending_token: _Token
10
+ attr_reader recognizer: Recognizer[untyped, untyped]
11
+
12
+ def initialize: (Recognizer[untyped, untyped], _IntStream, ParserRuleContext?, String) -> void
13
+
14
+ def get_ctx: -> RuleContext
15
+
16
+ def get_expected_tokens: -> RangeSet[Integer]
17
+
18
+ def get_input_stream: -> _IntStream
19
+
20
+ def get_offending_state: -> Integer
21
+
22
+ def get_offending_token: -> _Token
23
+
24
+ def get_recognizer: -> Recognizer[untyped, untyped]
25
+
26
+ def set_offending_state: (Integer) -> void
27
+
28
+ def set_offending_token: (_Token) -> void
29
+ end
30
+ end
@@ -0,0 +1,19 @@
1
+
2
+ module Antlr4ruby
3
+ module IntStream
4
+ EOF: Integer
5
+ UNKNOWN_SOURCE_NAME: String
6
+ end
7
+
8
+ interface _IntStream
9
+ def consume: -> void
10
+ def la: (Integer) -> Integer
11
+ def mark: -> Integer
12
+ def release: (Integer) -> void
13
+ def index: -> Integer
14
+ def seek: (Integer) -> void
15
+ def size: -> Integer
16
+
17
+ def get_source_name: -> String
18
+ end
19
+ end
@@ -0,0 +1,6 @@
1
+
2
+ module Antlr4ruby
3
+ class InterpreterRuleContext < ParserRuleContext
4
+ attr_accessor rule_index: Integer
5
+ end
6
+ end
@@ -0,0 +1,88 @@
1
+
2
+ module Antlr4ruby
3
+ # @abstract
4
+ class Lexer < Recognizer[Integer, LexerATNSimulator]
5
+ include _TokenSource
6
+
7
+
8
+ DEFAULT_MODE: Integer
9
+ DEFAULT_TOKEN_CHANNEL: Integer
10
+ HIDDEN: Integer
11
+ MAX_CHAR_VALUE: Integer
12
+ MIN_CHAR_VALUE: Integer
13
+ MORE: Integer
14
+
15
+ SKIP: Integer
16
+
17
+
18
+
19
+ @token_factory_source_pair: Pair[_TokenSource, _CharStream]
20
+
21
+ attr_accessor channel: Integer
22
+ attr_accessor factory: _TokenFactory[untyped]
23
+ attr_accessor hit_eof: bool
24
+ attr_accessor input: _CharStream
25
+ attr_accessor mode: Integer
26
+ attr_accessor mode_stack: IntegerStack
27
+ attr_accessor text: String
28
+ attr_accessor token: _Token
29
+
30
+ attr_accessor token_factory_source_pair: Pair[_TokenSource, _CharStream]
31
+ attr_accessor token_start_char_index: Integer
32
+
33
+ attr_accessor token_start_line: Integer
34
+ attr_accessor type: Integer
35
+
36
+ def initialize: (_CharStream?) -> void
37
+
38
+ def emit: (_Token?) -> _Token?
39
+
40
+ def emit_eof: -> _Token
41
+
42
+ def get_all_tokens: -> Array[_Token]
43
+
44
+ def get_channel: -> Integer
45
+
46
+ def get_channel_names: -> Array[String]
47
+
48
+ def get_char_error_display: (Integer) -> String
49
+
50
+ def get_char_index: -> Integer
51
+
52
+ def get_error_display: (String | Integer) -> String
53
+
54
+ def get_mode_names: -> Array[String]
55
+
56
+ def get_text: -> String
57
+
58
+ def get_token: -> _Token
59
+
60
+ def get_type: -> Integer
61
+
62
+ def more: -> void
63
+
64
+ def notify_listeners: (LexerNoViableAltException) -> void
65
+
66
+ def pop_mode: -> Integer
67
+
68
+ def push_mode: (Integer) -> void
69
+
70
+ def recover: (LexerNoViableAltException | RecognitionException) -> void
71
+
72
+ def reset: -> void
73
+
74
+ def set_channel: (Integer) -> void
75
+
76
+ def set_char_position_in_line: (Integer) -> void
77
+
78
+ def set_line: (Integer) -> void
79
+
80
+ def set_text: (String) -> void
81
+
82
+ def set_token: (_Token) -> void
83
+
84
+ def set_type: (Integer) -> void
85
+
86
+ def skip: -> void
87
+ end
88
+ end
@@ -0,0 +1,5 @@
1
+
2
+ module Antlr4ruby
3
+ class LexerInterpreter < Lexer
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+
2
+ module Antlr4ruby
3
+ class ListTokenSource
4
+ include _TokenSource
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class BitSet
4
+ end
5
+ end
6
+
@@ -0,0 +1,11 @@
1
+ module Antlr4ruby
2
+ class DoubleKeyMap[Key1, Key2, Value]
3
+ def get: (Key1, Key2) -> Value?
4
+
5
+ def put: (Key1, Key2) -> Value?
6
+
7
+ private
8
+
9
+ attr_accessor data: Hash[Key1, Hash[Key2, Value]]
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+
2
+
3
+ module Antlr4ruby
4
+ interface _EqualityComparator
5
+
6
+ end
7
+ end
@@ -0,0 +1,29 @@
1
+ module Antlr4ruby
2
+
3
+ interface _IntSet
4
+ def add: (Integer) -> void
5
+
6
+ def add_all: (_IntSet) -> _IntSet
7
+
8
+ def and: (_IntSet) -> _IntSet
9
+
10
+ def complement: (_IntSet) -> _IntSet
11
+
12
+ def or: (_IntSet) -> _IntSet
13
+
14
+ def substract: (_IntSet) -> _IntSet
15
+
16
+ def size: -> Integer
17
+
18
+ # def nil?: -> bool
19
+
20
+ def contains: (Integer) -> bool
21
+
22
+ def remove: (Integer) -> void
23
+
24
+ def to_list: -> Array[Integer]
25
+
26
+ end
27
+ end
28
+
29
+
@@ -0,0 +1,9 @@
1
+ module Antlr4ruby
2
+
3
+ class IntegerStack
4
+
5
+ end
6
+ end
7
+
8
+
9
+
@@ -0,0 +1,13 @@
1
+ module Antlr4ruby
2
+ class MurmurHash
3
+ DEFAULT_SEED: Integer
4
+
5
+ def self.finish: (Integer, Integer) -> Integer
6
+
7
+ def self.init: (Integer) -> Integer
8
+
9
+ def self.update: (Integer, Object) -> Integer
10
+
11
+ def self.hash: (Array[untyped], Integer) -> untyped
12
+ end
13
+ end
@@ -0,0 +1,15 @@
1
+ module Antlr4ruby
2
+
3
+ class Pair[A, B]
4
+
5
+ attr_accessor first: A
6
+ attr_accessor second: B
7
+
8
+ @first: A
9
+ @second: B
10
+
11
+ def initialize: (A, B) -> void
12
+
13
+ end
14
+ end
15
+
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ interface _Predicate[T]
4
+ def test: (T) -> bool
5
+ end
6
+ end
7
+
@@ -0,0 +1,49 @@
1
+ module Antlr4ruby
2
+ class RangeSet[T]
3
+ attr_accessor data: Array[Range[T]]
4
+
5
+ def &: (RangeSet[T]) -> RangeSet[T]
6
+
7
+ def +: (RangeSet[T]) -> RangeSet[T]
8
+
9
+ def -: (RangeSet[T]) -> RangeSet[T]
10
+
11
+ def add: (Range[T]) -> void
12
+
13
+ def add_all: (Enumerable[Range[T]] | RangeSet[T]) -> void
14
+
15
+ def clear: -> void
16
+
17
+ def complement: (RangeSet[T]) -> RangeSet[T]
18
+
19
+ def cover?: (Range[T]) -> bool
20
+
21
+ def delete: (Range[T]) -> void
22
+
23
+ def delete_all: (Enumerable[Range[T]] | RangeSet[T]) -> void
24
+
25
+ def empty?: -> bool
26
+
27
+ def include?: (Integer) -> bool
28
+
29
+ def merge: (RangeSet[T]) -> void
30
+
31
+ def start: -> Integer?
32
+
33
+ def stop: -> Integer?
34
+
35
+ def to_a: -> Array[Range[T]]
36
+
37
+ def to_set: -> Set[Range[T]]
38
+
39
+ def |: (RangeSet[T]) -> RangeSet[T]
40
+
41
+ def ~: -> RangeSet[T]
42
+
43
+ def initialize: (Array[Range[T]]) -> void
44
+
45
+ def eql?: (RangeSet[T]?) -> bool
46
+
47
+ def == :(RangeSet[T]) -> bool
48
+ end
49
+ end
@@ -0,0 +1,109 @@
1
+
2
+ module Antlr4ruby
3
+ class Parser < Recognizer[_Token, ParserATNSimulator]
4
+
5
+ class TraceListener
6
+ include _ParseTreeListener
7
+ end
8
+
9
+ class TrimToSizeListener
10
+ include _ParseTreeListener
11
+ end
12
+
13
+ attr_accessor build_parse_trees: bool
14
+ attr_accessor ctx: ParserRuleContext
15
+ attr_accessor err_handler: _ANTLRErrorStrategy
16
+ attr_accessor input: _TokenStream?
17
+ attr_accessor matched_eof: bool
18
+ attr_accessor parse_listeners: Array[_ParseTreeListener]
19
+ attr_reader precedence_stack: IntegerStack
20
+
21
+ attr_accessor syntax_errors: Integer
22
+
23
+ def add_contex_to_parse_tree: -> void
24
+
25
+ def add_parse_listener: (_ParseTreeListener) -> void
26
+
27
+ def consume: -> _Token
28
+
29
+ def create_terminal_node: (ParserRuleContext, _Token) -> _TerminalNode
30
+
31
+ def dump_dfa: -> void
32
+
33
+ def enter_recursion_rule: (ParserRuleContext, Integer, Integer, Integer) -> void
34
+
35
+ def enter_rule: (ParserRuleContext?, Integer?, Integer?) -> void
36
+
37
+ def get_atn_with_bypass_alts: -> ATN
38
+
39
+ def get_build_parse_tree: -> bool
40
+
41
+ def get_context: -> ParserRuleContext
42
+
43
+ def get_current_token: -> _Token
44
+
45
+ def get_dfa_strings: -> Array[String]
46
+
47
+ def get_error_handler: -> _ANTLRErrorStrategy
48
+
49
+ def get_expected_tokens: -> IntervalSet
50
+
51
+ def get_expected_tokens_within_current_rule: -> IntervalSet
52
+
53
+ def get_invoking_context: (Integer) -> ParserRuleContext
54
+
55
+ def get_parse_listeners: -> Array[_ParseTreeListener]
56
+
57
+ def get_precedence: -> Integer
58
+
59
+ def get_rule_context: -> ParserRuleContext
60
+
61
+ def get_rule_index: (String) -> Integer
62
+
63
+ def get_rule_invocation_stack: (RuleContext?) -> Array[String]
64
+
65
+ def get_source_name: -> String
66
+
67
+ def get_syntax_error_count: -> Integer
68
+
69
+ def get_token_stream: -> _TokenStream
70
+
71
+ def is_expected_token: (Integer) -> bool
72
+
73
+ def is_matched_eof?: -> bool
74
+
75
+ def match: (Integer) -> _Token
76
+
77
+ def match_wildcard: -> _Token
78
+
79
+ def notify_error_listeners: (String, _Token?, RecognitionException?) -> void
80
+
81
+ def push_new_recursion_context: (ParserRuleContext, Integer, Integer) -> void
82
+
83
+ def remove_parse_listener: (_ParseTreeListener) -> void
84
+
85
+ def remove_parse_listeners: -> void
86
+
87
+ def reset: -> void
88
+
89
+ def set_build_parse_tree: (bool) -> void
90
+
91
+ def set_context: (ParserRuleContext) -> void
92
+
93
+ def set_error_handler: (_ANTLRErrorStrategy) -> void
94
+
95
+ def set_profile: (bool) -> void
96
+
97
+ def set_token_stream: (_TokenStream) -> void
98
+
99
+ def trigger_enter_rule_event: -> void
100
+
101
+ def trigger_exit_rule_event: -> void
102
+
103
+ def unroll_recursion_contexts: (ParserRuleContext) -> void
104
+
105
+ private
106
+
107
+ attr_accessor bypass_alt_atn_cache: ATN
108
+ end
109
+ end
@@ -0,0 +1,24 @@
1
+
2
+ module Antlr4ruby
3
+ class ParserInterpreter < Parser
4
+ attr_reader atn: ATN
5
+ attr_reader decision_to_dfa: Array[DFA]
6
+ attr_reader grammar_file_name: String
7
+
8
+ attr_accessor override_decision: Integer
9
+ attr_accessor override_decision_alt: Integer
10
+ attr_accessor override_decision_input_index: Integer
11
+ attr_accessor override_decision_reached: bool
12
+ attr_accessor override_decision_root: InterpreterRuleContext?
13
+ # attr_accessor override_decision_root: InterpreterRuleContext
14
+ attr_reader parent_context_stack: Vocabulary
15
+ attr_accessor root_context: InterpreterRuleContext
16
+ attr_reader rule_names: Array[String]
17
+ attr_reader shared_context_cache: PredictionContextCache
18
+
19
+ attr_reader vocabulary: Vocabulary
20
+
21
+ def initialize: (String, Vocabulary, Array[String], ATN, _TokenStream) -> void
22
+
23
+ end
24
+ end
@@ -0,0 +1,53 @@
1
+
2
+ module Antlr4ruby
3
+ class ParserRuleContext < RuleContext
4
+ EMPTY: ParserRuleContext
5
+
6
+ @children: Array[_ParseTree]
7
+ @start: _Token
8
+ @stop: _Token
9
+ @exception: RecognitionException
10
+
11
+ attr_accessor children: Array[_ParseTree]
12
+
13
+ attr_accessor exception: RecognitionException
14
+ attr_accessor start: _Token
15
+
16
+ attr_accessor stop: _Token
17
+
18
+ def initialize: (ParserRuleContext?, Integer) -> void
19
+
20
+ def add_any_child: (untyped) -> _ParseTree
21
+
22
+ def add_child: (RuleContext | TerminalNode) -> (RuleContext | TerminalNode)
23
+
24
+ def add_error_node: (ErrorNode) -> ErrorNode
25
+
26
+ def copy_from: (ParserRuleContext) -> void
27
+
28
+ # def enter_rule: (_ParseTreeListener) -> void
29
+
30
+ # def exit_rule: (_ParseTreeListener) -> void
31
+
32
+ def get_start: -> _Token
33
+
34
+ def get_stop: -> _Token
35
+
36
+ def get_token: (Integer, Integer) -> TerminalNode?
37
+
38
+ def get_tokens: (Integer) -> Array[TerminalNode]
39
+
40
+ def remove_last_child: -> void
41
+
42
+ def to_info_string: (Parser) -> String
43
+
44
+ def get_parent: -> ParserRuleContext
45
+
46
+ def get_child: (Integer, Class?) -> _ParseTree?
47
+
48
+ def get_rule_context: (Class, Integer) -> RuleContext?
49
+
50
+ def get_rule_contexts: (Class) -> Array[RuleContext]
51
+
52
+ end
53
+ end
@@ -0,0 +1,10 @@
1
+
2
+ module Antlr4ruby
3
+ class ProxyErrorListener
4
+ include _ANTLRErrorListener
5
+
6
+ attr_reader delegates: Array[_ANTLRErrorListener]
7
+
8
+ def initialize: (Array[_ANTLRErrorListener]) -> void
9
+ end
10
+ end
@@ -0,0 +1,76 @@
1
+
2
+ module Antlr4ruby
3
+ # @abstract
4
+ class Recognizer[Symbol, ATNInterpreter]
5
+ EOF: Integer
6
+
7
+ @@token_type_map_cache: Hash[Vocabulary, Hash[String, Integer]]
8
+ @@rule_index_map_cache: Hash[Array[String], Hash[String, Integer]]
9
+ @listeners: Array[_ANTLRErrorListener]
10
+
11
+ attr_accessor interpreter: ATNInterpreter
12
+
13
+ attr_accessor state_number: Integer
14
+
15
+ def action: (RuleContext?, Integer, Integer) -> void
16
+
17
+ def add_error_listener: (_ANTLRErrorListener) -> void
18
+
19
+ def get_atn: -> ATN
20
+
21
+ def get_error_header: (RecognitionException) -> String
22
+
23
+ def get_error_listener_dispatch: -> _ANTLRErrorListener
24
+
25
+ def get_error_listeners: -> Array[_ANTLRErrorListener]
26
+
27
+ def get_grammar_file_name: -> String
28
+
29
+ def get_input_stream: -> _IntStream
30
+
31
+ def get_interpreter: -> ATNInterpreter
32
+
33
+ def get_parse_info: -> ParseInfo?
34
+
35
+ def get_rule_index_map: -> Hash[String, Integer]
36
+
37
+ def get_rule_names: -> Array[String]
38
+
39
+ def get_serialized_atn: -> String
40
+
41
+ def get_state: -> Integer
42
+
43
+ def get_token_factory: -> _TokenFactory[untyped]
44
+
45
+ def get_token_names: -> Array[String]
46
+
47
+ def get_token_type: -> Integer
48
+
49
+ def get_token_type_map: -> Hash[String, Integer]
50
+
51
+ def get_vocabulary: -> Vocabulary
52
+
53
+ def precpred: (RuleContext, Integer) -> bool
54
+
55
+ def remove_error_listener: (_ANTLRErrorListener) -> void
56
+
57
+ def remove_error_listeners: -> void
58
+
59
+ def sempred: (RuleContext, Integer, Integer) -> bool
60
+
61
+ def set_input_stream: (_IntStream) -> void
62
+
63
+ def set_interpreter: (ATNInterpreter) -> void
64
+
65
+ def set_state: (Integer) -> void
66
+
67
+ def set_token_factory: (_TokenFactory[untyped]) -> void
68
+
69
+ private
70
+
71
+ attr_accessor listeners: Array[_ANTLRErrorListener]
72
+
73
+
74
+
75
+ end
76
+ end
@@ -0,0 +1,31 @@
1
+
2
+ module Antlr4ruby
3
+ class RuleContext
4
+ include _RuleNode
5
+ @parent: RuleContext?
6
+ @invoking_state: Integer
7
+
8
+ attr_accessor invoking_state: Integer
9
+ attr_accessor parent: RuleContext
10
+
11
+ def initialize: (RuleContext?, Integer) -> void
12
+
13
+ def depth: -> Integer
14
+
15
+ def enter_rule: (_ParseTreeListener) -> void
16
+
17
+ def exit_rule: (_ParseTreeListener) -> void
18
+
19
+ def get_alt_number: -> Integer
20
+
21
+ def get_rule_index: -> Integer
22
+
23
+ def is_empty?: -> bool
24
+
25
+ def set_alt_number: (Integer) -> void
26
+
27
+ def to_s: (recognizer: Recognizer[untyped, untyped]?, rule_names: Array[String], stop: RuleContext?) -> String
28
+
29
+ # def get_rule_context: (Class, Integer?) -> RuleContext?
30
+ end
31
+ end
@@ -0,0 +1,8 @@
1
+
2
+ module Antlr4ruby
3
+ class RuleContextWithAltNum < ParserRuleContext
4
+ attr_accessor alt_num: Integer
5
+
6
+ # def rule_context_with_alt_num: -> void
7
+ end
8
+ end
@@ -0,0 +1,12 @@
1
+
2
+ module Antlr4ruby
3
+ class RuntimeMetaData
4
+ VERSION: String
5
+
6
+ def self.check_version: (String, String) -> void
7
+
8
+ def self.get_major_minor_version: (String) -> String
9
+
10
+ def self.get_runtime_version: -> String
11
+ end
12
+ end