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,7 @@
1
+
2
+
3
+ module Antlr4ruby
4
+ class InvalidState
5
+ def get_state_type: -> Integer
6
+ end
7
+ end
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class LoopEndState < ATNState
5
+ attr_accessor loop_back_state: ATNState
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class PlusBlockStartState < BlockStartState
4
+ attr_accessor loop_back_state: PlusLoopbackState
5
+ end
6
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class PlusLoopbackState < DecisionState
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ class RuleStartState < ATNState
4
+ attr_accessor is_left_recursive_rule: bool
5
+ attr_accessor stop_state: RuleStopState
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class RuleStopState < ATNState
4
+ end
5
+
6
+ end
@@ -0,0 +1,12 @@
1
+
2
+
3
+ module Antlr4ruby
4
+ class SimulatorState
5
+ attr_accessor outer_context: ParserRuleContext
6
+ attr_accessor remaining_outer_context: ParserRuleContext?
7
+ attr_accessor s0: DFAState
8
+ attr_accessor use_context: bool
9
+
10
+ def initialize: (ParserRuleContext, DFAState, bool, ParserRuleContext?) -> void
11
+ end
12
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class StarBlockStartState < BlockStartState
4
+ end
5
+
6
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+
3
+ class StarLoopEntryState < ATNState
4
+ attr_accessor is_precedence_decision: bool
5
+ attr_accessor loop_back_state: StarLoopbackState
6
+ end
7
+
8
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class StarLoopbackState < DecisionState
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class TokensStartState < DecisionState
4
+ end
5
+
6
+ end
@@ -0,0 +1,10 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class AbstractPredicateTransition < Transition
5
+
6
+ end
7
+ end
8
+
9
+
10
+
@@ -0,0 +1,15 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class ActionTransition < Transition
5
+ @rule_index: Integer
6
+ @action_index: Integer
7
+ @is_ctx_dependent: bool
8
+
9
+ attr_reader action_index: Integer
10
+ attr_reader is_ctx_dependent: Integer
11
+ attr_reader rule_index: Integer
12
+
13
+ def initialize: (ATNState, Integer, Integer, bool) -> void
14
+ end
15
+ end
@@ -0,0 +1,10 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class AtomTransition < Transition
5
+ attr_reader atom_label: Integer
6
+ # attr_reader label: Integer
7
+
8
+ def initialize: (ATNState, Integer) -> void
9
+ end
10
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+ # @abstract
3
+ class CodePointTransitions
4
+ end
5
+ end
@@ -0,0 +1,12 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class EpsilonTransition < Transition
5
+
6
+ def initialize: (ATNState, Integer) -> void
7
+
8
+ @outermost_precedence_return: Integer
9
+
10
+ attr_reader outermost_precedence_return: Integer
11
+ end
12
+ end
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class NotSetTransition < SetTransition
5
+ end
6
+
7
+ end
@@ -0,0 +1,10 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class PrecedencePredicateTransition < AbstractPredicateTransition
5
+ attr_reader precedence: Integer
6
+
7
+ def initialize: (ATNState, Integer) -> void
8
+ def get_predicate: -> untyped
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ module Antlr4ruby
2
+
3
+ class PredicateTransition < AbstractPredicateTransition
4
+ attr_reader is_ctx_dependent: bool
5
+ attr_reader pred_index: Integer
6
+ attr_reader rule_index: Integer
7
+
8
+ def initialize: (ATNState, Integer, Integer, bool) -> void
9
+ end
10
+
11
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+
3
+ class RangeTransition < Transition
4
+ attr_reader from: Integer
5
+ attr_reader to: Integer
6
+ def initialize: (ATNState, Integer, Integer) -> void
7
+ end
8
+ end
@@ -0,0 +1,10 @@
1
+ module Antlr4ruby
2
+
3
+ class RuleTransition < Transition
4
+ attr_accessor follow_state: ATNState
5
+ attr_reader precedence: Integer
6
+ attr_reader rule_index: Integer
7
+
8
+ def initialize: (RuleStartState, Integer, Integer, ATNState) -> void
9
+ end
10
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+
3
+ class SetTransition < Transition
4
+ attr_reader range_set: RangeSet[Integer]
5
+
6
+ def initialize: (ATNState, RangeSet[Integer]?) -> void
7
+ end
8
+ end
@@ -0,0 +1,40 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class Transition
5
+ EPSILON : Integer
6
+ RANGE : Integer
7
+ RULE : Integer
8
+ PREDICATE : Integer
9
+ ATOM : Integer
10
+ ACTION : Integer
11
+ SET : Integer
12
+ NOT_SET : Integer
13
+ WILDCARD : Integer
14
+ PRECEDENCE : Integer
15
+
16
+ @@serialization_names: Array[String]
17
+ @@serialization_types: Hash[Class, Integer]
18
+
19
+ @target: ATNState
20
+
21
+ def self.serialization_names: -> Array[String]
22
+
23
+ def self.serialization_types: -> Hash[Class, Integer]
24
+
25
+ attr_accessor target: ATNState
26
+
27
+ def initialize: (ATNState) -> void
28
+
29
+ # @!abstract
30
+ def get_serialization_type: -> Integer
31
+
32
+ def is_epsilon?: -> bool
33
+
34
+ def label: -> RangeSet[Integer]?
35
+
36
+ # @abstract
37
+ def matches?: (Integer, Integer, Integer) -> bool
38
+
39
+ end
40
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class WildcardTransition < Transition
4
+ end
5
+ end
@@ -0,0 +1,7 @@
1
+ # TODO
2
+
3
+ module Antlr4ruby
4
+ class BailErrorStrategy < DefaultErrorStrategy
5
+ # 什么都不需要写
6
+ end
7
+ end
@@ -0,0 +1,6 @@
1
+
2
+ module Antlr4ruby
3
+ class BaseErrorListener
4
+ include _ANTLRErrorListener
5
+ end
6
+ end
@@ -0,0 +1,48 @@
1
+ module Antlr4ruby
2
+ class BufferedTokenStream
3
+ include _TokenStream
4
+
5
+ def initialize: (_TokenSource) -> void
6
+
7
+ def adjust_seek_index: (Integer) -> Integer
8
+
9
+ def fetch: (Integer) -> Integer
10
+
11
+ def fill: -> void
12
+
13
+ def filter_for_channel: (Integer, Integer, Integer) -> Array[_Token]
14
+
15
+ def get_hidden_tokens_to_left: (Integer, Integer) -> Array[_Token]
16
+
17
+ def get_hidden_tokens_to_right: (Integer, Integer) -> Array[_Token]
18
+
19
+ attr_accessor fetched_eof: bool
20
+ attr_accessor p: Integer
21
+ attr_accessor token_source: _TokenSource
22
+ attr_accessor tokens: Array[_Token]
23
+
24
+ def get_multi: (Integer, Integer) -> Array[_Token]
25
+
26
+ def get_tokens:
27
+ () -> Array[_Token]
28
+ | (Integer, Integer) -> Array[_Token]
29
+ | (Integer, Integer, Set[Integer]) -> Array[_Token]
30
+ | (Integer, Integer, Integer) -> Array[_Token]
31
+
32
+ def lazy_init: -> void
33
+
34
+ def lb: (Integer) -> _Token?
35
+
36
+ def next_token_on_channel: (Integer, Integer) -> Integer
37
+
38
+ def previous_token_on_channel: (Integer, Integer) -> Integer
39
+
40
+ def set_token_source: (_TokenSource) -> void
41
+
42
+ def setup: -> void
43
+
44
+ def sync: (Integer) -> bool
45
+
46
+ # def get: (Integer) -> _Token
47
+ end
48
+ end
@@ -0,0 +1,9 @@
1
+ # 已完成
2
+
3
+ module Antlr4ruby
4
+ interface _CharStream
5
+ include _IntStream
6
+
7
+ def get_text: (Range[Integer]) -> String
8
+ end
9
+ end
@@ -0,0 +1,14 @@
1
+
2
+ module Antlr4ruby
3
+ class CharStreams
4
+ DEFAULT_BUFFER_SIZE: Integer
5
+
6
+ def self.from_file: (File) -> _CharStream
7
+
8
+ def self.from_file_name: (String, String?) -> _CharStream
9
+
10
+ def self.from_path: (String, String?) -> _CharStream
11
+
12
+ def self.from_string: (String, String) -> CodePointCharStream
13
+ end
14
+ end
@@ -0,0 +1,20 @@
1
+
2
+ module Antlr4ruby
3
+ class CodePointBuffer
4
+ BYTE: Symbol
5
+ CHAR: Symbol
6
+ INT: Symbol
7
+
8
+ @type: Symbol
9
+
10
+ def array_offset: -> Integer
11
+
12
+ def get: (Integer) -> Integer
13
+
14
+ def get_type: -> Symbol
15
+
16
+ def position: (Integer?) -> void
17
+
18
+ def remaining: -> Integer
19
+ end
20
+ end
@@ -0,0 +1,19 @@
1
+
2
+ module Antlr4ruby
3
+ # @abstract
4
+ class CodePointCharStream
5
+ include _CharStream
6
+
7
+ def self.from_buffer: (CodePointBuffer, String)-> CodePointCharStream
8
+
9
+ def self.from_string: (String, String) -> CodePointCharStream
10
+
11
+ attr_reader data: Array[Integer]
12
+ attr_reader name: String
13
+ attr_accessor position: Integer
14
+ attr_reader size: Integer
15
+
16
+ def get_internal_storage: -> Object
17
+ def initialize: (Array[Integer], String) -> void
18
+ end
19
+ end
@@ -0,0 +1,35 @@
1
+
2
+ module Antlr4ruby
3
+ class CommonToken
4
+ include _WritableToken
5
+
6
+ @type: Integer
7
+ @line: Integer
8
+ @char_position_in_line: Integer
9
+ @channel: Integer
10
+ @text: String
11
+ @index: Integer
12
+ @start: Integer
13
+ @stop: Integer
14
+ @source: Pair[_TokenSource, _CharStream]
15
+ EMPTY_SOURCE: Pair[_TokenSource, _CharStream]
16
+
17
+ attr_accessor channel: Integer
18
+ attr_accessor char_position_in_line: Integer
19
+ attr_accessor index: Integer
20
+ attr_accessor line: Integer
21
+ attr_accessor source: Pair[_TokenSource, _CharStream]
22
+ attr_accessor start: Integer
23
+ attr_accessor stop: Integer
24
+ attr_accessor text: String
25
+ attr_accessor type: Integer
26
+
27
+ def initialize: (type: Integer?, source: Pair[_TokenSource, _CharStream]?, channel: Integer?, start: Integer?, stop: Integer?, text: String?, old_token: _Token?) -> void
28
+
29
+ def set_start_index: (Integer) -> void
30
+
31
+ def set_stop_index: (Integer) -> void
32
+
33
+ def to_s: (Recognizer[untyped, untyped]?) -> String
34
+ end
35
+ end
@@ -0,0 +1,12 @@
1
+
2
+ module Antlr4ruby
3
+ class CommonTokenFactory
4
+ DEFAULT: CommonTokenFactory
5
+
6
+ include _TokenFactory[CommonToken]
7
+
8
+ attr_reader copy_text: bool
9
+
10
+ def initialize: (bool) -> void
11
+ end
12
+ end
@@ -0,0 +1,9 @@
1
+
2
+ module Antlr4ruby
3
+ class CommonTokenStream < BufferedTokenStream
4
+ attr_accessor channel: Integer
5
+ def initialize: (_TokenSource, Integer) -> void
6
+
7
+ def get_number_of_on_channel_tokens: -> Integer
8
+ end
9
+ end
@@ -0,0 +1,6 @@
1
+
2
+ module Antlr4ruby
3
+ class ConsoleErrorListener < BaseErrorListener
4
+ INSTANCE: ConsoleErrorListener
5
+ end
6
+ end
@@ -0,0 +1,56 @@
1
+
2
+ module Antlr4ruby
3
+ class DefaultErrorStrategy
4
+ include _ANTLRErrorStrategy
5
+
6
+ @error_recovery_mode: bool
7
+ @last_error_index: Integer
8
+ @last_error_states: IntervalSet
9
+ @next_tokens_context: ParserRuleContext
10
+ @next_tokens_state: Integer
11
+
12
+ attr_accessor error_recovery_mode: bool
13
+
14
+ attr_accessor last_error_index: Integer
15
+
16
+ attr_accessor last_error_states: IntervalSet
17
+
18
+ attr_accessor next_tokens_context: ParserRuleContext
19
+
20
+ attr_accessor next_tokens_state: Integer
21
+
22
+ def begin_error_condition: (Parser) -> void
23
+
24
+ def end_error_condition: (Parser) -> void
25
+
26
+ def report_no_viable_alternative: (Parser, NoViableAltException) -> void
27
+
28
+ def report_input_mismatch: (Parser, InputMismatchException) -> void
29
+
30
+ def report_failed_predicate: (Parser, FailedPredicateException) -> void
31
+
32
+ def report_unwanted_token: (Parser) -> void
33
+
34
+ def report_missing_token: (Parser) -> void
35
+
36
+ def single_token_insertion: (Parser) -> bool
37
+
38
+ def single_token_deletion: (Parser) -> _Token
39
+
40
+ def get_missing_symbol: (Parser) -> _Token
41
+
42
+ def get_expected_tokens: (Parser) -> IntervalSet
43
+
44
+ def get_token_error_display: (_Token) -> String
45
+
46
+ def get_symbol_text: (_Token) -> String
47
+
48
+ def get_symbol_type: (_Token) -> Integer
49
+
50
+ def escape_ws_and_quote: (String) -> String
51
+
52
+ def get_error_recovery_set: (Parser) -> IntervalSet
53
+
54
+ def consume_until: (Parser, IntervalSet) -> void
55
+ end
56
+ end
@@ -0,0 +1,29 @@
1
+ module Antlr4ruby
2
+
3
+ class DFA
4
+ @states: Hash[DFAState, DFAState]
5
+ @s0: DFAState
6
+ @decision: Integer
7
+ @atn_start_state: DecisionState
8
+
9
+ @precedence_dfa: bool
10
+
11
+ attr_accessor atn_start_state: DecisionState
12
+ attr_accessor decision: Integer
13
+ attr_accessor s0: DFAState
14
+ attr_accessor states: Hash[DFAState, DFAState]
15
+
16
+ def initialize: (DecisionState, Integer) -> void
17
+
18
+ def get_precedence_start_state: (Integer) -> DFAState
19
+
20
+ def get_states: -> Array[DFAState]
21
+
22
+ def is_precedence_dfa: -> bool
23
+
24
+ def set_precedence_start_state: (Integer, DFAState) -> void
25
+
26
+ def to_lexer_string: -> String
27
+ end
28
+ end
29
+
@@ -0,0 +1,11 @@
1
+ module Antlr4ruby
2
+
3
+ class DFASerializer
4
+ @dfa: DFA
5
+ @vocabulary: Vocabulary
6
+
7
+ def get_edge_label: (Integer) -> String
8
+
9
+ def get_state_string: (DFAState) -> String
10
+ end
11
+ end
@@ -0,0 +1,50 @@
1
+ module Antlr4ruby
2
+
3
+ class DFAState
4
+ BASIC: Integer
5
+ BLOCK_END: Integer
6
+ BLOCK_START: Integer
7
+ INITIAL_NUM_TRANSITIONS: Integer
8
+ INVALID_TYPE: Integer
9
+ LOOP_END: Integer
10
+ PLUS_BLOCK_START: Integer
11
+ PLUS_LOOP_BACK: Integer
12
+ RULE_START: Integer
13
+ RULE_STOP: Integer
14
+ STAR_BLOCK_START: Integer
15
+ STAR_LOOP_BACK: Integer
16
+ STAR_LOOP_ENTRY: Integer
17
+ TOKEN_START: Integer
18
+
19
+ @state_number: Integer
20
+ @configs: ATNConfigSet
21
+ @edges: Array[DFAState]
22
+ @is_accept_state: bool
23
+ @prediction: Integer
24
+ @lexer_action_executor: LexerActionExecutor
25
+ @requires_full_context: bool
26
+
27
+ class PredPrediction
28
+ @pred: SemanticContext
29
+ @alt: Integer
30
+
31
+ def initialize: (SemanticContext, Integer) -> void
32
+ end
33
+
34
+ @predicates: Array[PredPrediction]
35
+
36
+ attr_accessor configs: ATNConfigSet
37
+ attr_accessor edges: Array[DFAState]
38
+ attr_accessor is_accept_state: bool
39
+ attr_accessor lexer_action_executor: LexerActionExecutor
40
+ attr_accessor predicates: Array[PredPrediction]
41
+ attr_accessor prediction: Integer
42
+ attr_accessor requires_full_context: bool
43
+ attr_accessor state_number: Integer
44
+
45
+ def initialize: (Integer | ATNConfigSet | nil) -> void
46
+
47
+ def get_alt_set: -> Set[Integer]
48
+
49
+ end
50
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class LexerDFASerializer < DFASerializer
4
+ end
5
+ end
@@ -0,0 +1,10 @@
1
+
2
+ module Antlr4ruby
3
+ class DiagnosticErrorListener < BaseErrorListener
4
+ attr_reader exact_only: bool
5
+
6
+ def get_conflicting_alts: (BitSet, ATNConfigSet) -> BitSet
7
+
8
+ def get_decision_description: (Parser, DFA) -> String
9
+ end
10
+ end
@@ -0,0 +1,23 @@
1
+
2
+ module Antlr4ruby
3
+ class FailedPredicateException < RecognitionException
4
+
5
+ # private
6
+ # attr_reader :rule_index, :predicate_index
7
+
8
+ attr_reader predicate: String
9
+ attr_reader predicate_index: Integer
10
+
11
+ def get_pred_index: -> Integer
12
+
13
+ def get_predicate: -> String
14
+
15
+ def get_rule_index: -> Integer
16
+
17
+ def initialize: (Parser, String?, String?) -> void
18
+
19
+ private
20
+
21
+ attr_reader rule_index: Integer
22
+ end
23
+ end
@@ -0,0 +1,7 @@
1
+
2
+ module Antlr4ruby
3
+ class InputMismatchException < RecognitionException
4
+
5
+ def initialize: (Parser, Integer?, ParserRuleContext?) -> void
6
+ end
7
+ end