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,12 @@
1
+ module Antlr4ruby
2
+
3
+ class LexerTypeAction
4
+ include _LexerAction
5
+
6
+ def get_type: -> Integer
7
+
8
+ private
9
+
10
+ attr_reader type: Integer
11
+ end
12
+ end
@@ -0,0 +1,32 @@
1
+ module Antlr4ruby
2
+
3
+ class ATN
4
+ INVALID_ALT_NUMBER: Integer
5
+
6
+ attr_reader decision_to_state: Array[DecisionState]
7
+ attr_reader grammar_type: Symbol
8
+ attr_accessor lexer_actions: Array[_LexerAction]
9
+ attr_reader max_token_type: Integer
10
+ attr_reader mode_name_to_start_state: Hash[String, TokensStartState]
11
+ attr_reader mode_to_start_state: Array[TokensStartState]
12
+ attr_accessor rule_to_start_state: Array[RuleStartState]
13
+ attr_accessor rule_to_stop_state: Array[RuleStopState]
14
+ attr_accessor rule_to_token_type: Array[Integer]
15
+ attr_reader states: Array[ATNState]
16
+
17
+ def add_state: (ATNState?) -> void
18
+
19
+ def define_decision_state: (DecisionState) -> Integer
20
+
21
+ def get_decision_state: (Integer) -> DecisionState
22
+
23
+ def get_expected_tokens: (Integer, RuleContext) -> RangeSet[Integer]
24
+
25
+ def get_number_of_decisions: -> Integer
26
+
27
+ def next_tokens: (ATNState, RuleContext?) -> RangeSet[Integer]
28
+ def initialize: (Symbol, Integer) -> void
29
+
30
+ def remove_state: (ATNState) -> void
31
+ end
32
+ end
@@ -0,0 +1,27 @@
1
+ module Antlr4ruby
2
+
3
+ class ATNDeserializationOptions
4
+ @@default_options: ATNDeserializationOptions
5
+
6
+ def self.get_default_options: -> ATNDeserializationOptions
7
+
8
+ attr_reader generate_rule_bypass_transitions: bool
9
+ attr_reader verify_atn: bool
10
+
11
+ def is_generate_rule_bypass_transitions?: -> bool
12
+
13
+ def is_read_only?: -> bool
14
+
15
+ def is_verify_atn?: -> bool
16
+
17
+ def make_read_only: (bool) -> void
18
+
19
+ def set_generate_rule_bypass_transitions: (bool) -> void
20
+
21
+ def set_verify_atn: (bool) -> void
22
+
23
+ private
24
+
25
+ attr_reader read_only: bool
26
+ end
27
+ end
@@ -0,0 +1,26 @@
1
+ module Antlr4ruby
2
+
3
+ class ATNDeserializer
4
+ SERIALIZED_VERSION: Integer
5
+
6
+ def check_condition: (bool, String?) -> void
7
+
8
+ def deserialize: (Array[Integer]) -> ATN
9
+
10
+ def edge_factory: (ATN, Integer, Integer, Integer,Integer,Integer,Integer,Array[RangeSet[Integer]]) -> Transition
11
+
12
+ def lexer_action_factory: (Symbol, Integer, Integer) -> _LexerAction
13
+
14
+ def mark_precedence_decisions: (ATN) -> void
15
+
16
+ def state_factory: (Integer, Integer) -> ATNState
17
+
18
+ def verify_atn: (ATN) -> void
19
+
20
+ private
21
+
22
+ attr_reader deserialization_options: ATNDeserializationOptions
23
+
24
+ def deserialize_sets: (Array[Integer], Integer, Array[RangeSet[Integer]]) -> Integer
25
+ end
26
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class ATNSerializer
4
+ end
5
+ end
@@ -0,0 +1,19 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class ATNSimulator
5
+ ERROR: DFAState
6
+
7
+ attr_reader atn: ATN
8
+ attr_reader shared_context_cache: PredictionContextCache
9
+
10
+ def clear_dfa: -> void
11
+
12
+ def get_cached_context: (PredictionContext) -> PredictionContext
13
+
14
+ def get_shared_context_cache: -> PredictionContextCache
15
+
16
+ def reset: -> void
17
+ end
18
+
19
+ end
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ module ATNType
4
+
5
+ end
6
+
7
+ end
@@ -0,0 +1,21 @@
1
+ module Antlr4ruby
2
+
3
+ class ATNConfig
4
+ SUPPRESS_PRECEDENCE_FILTER: Integer
5
+
6
+ attr_reader alt: Integer
7
+ attr_accessor context: PredictionContext
8
+ attr_accessor reaches_into_outer_context: Integer
9
+ attr_reader semantic_context: SemanticContext
10
+ attr_reader state: ATNState
11
+
12
+ def get_outer_context_depth: -> Integer
13
+
14
+ def is_precedence_filter_suppressed: -> bool
15
+
16
+ def set_precedence_filter_suppressed: (bool) -> void
17
+
18
+ def eql?: (Object) -> bool
19
+ def to_s: (recognizer: Recognizer[untyped, untyped]?, show_alt: bool) -> String
20
+ end
21
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class ATNConfigSet < Set[ATNConfig]
4
+ end
5
+ end
@@ -0,0 +1,19 @@
1
+ module Antlr4ruby
2
+
3
+ class LexerATNConfig < ATNConfig
4
+
5
+ def initialize: (state: ATNState, alt:Integer?, context: PredictionContext?,
6
+ config: LexerATNConfig?, executor: LexerActionExecutor?) -> void
7
+ def self.check_non_greedy_decision: (LexerATNConfig, ATNState) -> bool
8
+
9
+ attr_reader passed_through_non_greedy_decision: bool
10
+
11
+ def get_lexer_action_executor: -> LexerActionExecutor
12
+
13
+ def has_passed_through_non_greedy_decision?: -> bool
14
+
15
+ private
16
+
17
+ attr_reader lexer_action_executor: LexerActionExecutor
18
+ end
19
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class OrderedATNConfigSet < ATNConfigSet
4
+ end
5
+ end
@@ -0,0 +1,11 @@
1
+ module Antlr4ruby
2
+
3
+ class ArrayPredictionContext < PredictionContext
4
+ attr_reader parents: Array[PredictionContext]
5
+ attr_reader return_states: Array[Integer]
6
+
7
+ def initialize: (context: SingletonPredictionContext?,
8
+ parents: Array[PredictionContext],
9
+ return_states: Array[Integer]) -> void
10
+ end
11
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class EmptyPredictionContext < SingletonPredictionContext
4
+ INSTANCE: EmptyPredictionContext
5
+ end
6
+ end
@@ -0,0 +1,52 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class PredictionContext
5
+ EMPTY_RETURN_STATE: Integer
6
+ INITIAL_HASH: Integer
7
+
8
+ @@global_node_count: Integer
9
+
10
+ def self.calculate_empty_hash_code: -> Integer
11
+
12
+ def self.calculate_hash_code: (parent: PredictionContext?, parents: Array[PredictionContext], return_state: Integer, return_states: Array[Integer]) -> Integer
13
+
14
+ def self.combine_common_parents: (Array[PredictionContext]) -> void
15
+
16
+ def self.from_rule_context: (ATN, RuleContext) -> PredictionContext
17
+
18
+ def self.get_all_context_nodes: (PredictionContext) -> Array[PredictionContext]
19
+
20
+ def self.get_all_context_nodes_: (PredictionContext, Array[PredictionContext], Hash[PredictionContext, PredictionContext]) -> void
21
+
22
+ def self.get_cached_context: (PredictionContext, PredictionContextCache, Hash[Integer, PredictionContext]) -> PredictionContext
23
+
24
+ def self.merge: (PredictionContext, PredictionContext, bool, Hash[PredictionContext, Hash[PredictionContext, PredictionContext]]) -> PredictionContext
25
+
26
+ def self.merge_arrays: (ArrayPredictionContext, ArrayPredictionContext, bool, Hash[PredictionContext, Hash[PredictionContext, PredictionContext]]) -> PredictionContext
27
+
28
+ def self.merge_root: (SingletonPredictionContext, SingletonPredictionContext, bool) -> PredictionContext
29
+
30
+ def self.merge_singletons: (SingletonPredictionContext, SingletonPredictionContext, bool, Hash[PredictionContext, Hash[PredictionContext, PredictionContext]]) -> PredictionContext
31
+
32
+ def self.to_dot_string: (PredictionContext) -> String
33
+
34
+ attr_reader cached_hash_code: Integer
35
+ attr_reader id: Integer
36
+
37
+ def initialize: (Integer) -> void
38
+
39
+ def get_parent: (Integer) -> PredictionContext?
40
+
41
+ def get_return_state: (Integer) -> Integer
42
+
43
+ def has_empty_path?: -> bool
44
+
45
+ def is_empty?: -> bool
46
+
47
+ def size: -> Integer
48
+
49
+ def to_s: (Recognizer[untyped, untyped]) -> String
50
+ end
51
+
52
+ end
@@ -0,0 +1,12 @@
1
+ module Antlr4ruby
2
+
3
+ class PredictionContextCache
4
+ attr_reader cache: Hash[PredictionContext, PredictionContext]
5
+
6
+ def add: (PredictionContext) -> PredictionContext
7
+
8
+ def get: (PredictionContext) -> PredictionContext
9
+
10
+ def size: -> Integer
11
+ end
12
+ end
@@ -0,0 +1,36 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class SemanticContext
5
+ def self.and: (SemanticContext, SemanticContext) -> SemanticContext
6
+
7
+ def self.or: (SemanticContext, SemanticContext) -> SemanticContext
8
+
9
+ def eval_precedence: (Recognizer[untyped, untyped], RuleContext) -> SemanticContext
10
+ def eval: (Recognizer[untyped, untyped], RuleContext) -> bool
11
+
12
+ class Empty < SemanticContext
13
+ INSTANCE: Empty
14
+ end
15
+
16
+ class Predicate < SemanticContext
17
+
18
+ attr_reader is_ctx_dependent: bool
19
+ attr_reader pred_index: Integer
20
+ attr_reader rule_index: Integer
21
+ end
22
+
23
+ class PrecedencePredicate < SemanticContext
24
+ # todo
25
+ end
26
+
27
+ class Operator < SemanticContext
28
+ def get_operands: -> Array[SemanticContext]
29
+
30
+ end
31
+
32
+ private
33
+
34
+ def filter_precedence_predicates: (Array[SemanticContext]) -> Array[PrecedencePredicate]
35
+ end
36
+ end
@@ -0,0 +1,11 @@
1
+ module Antlr4ruby
2
+
3
+ class SingletonPredictionContext < PredictionContext
4
+ def self.create: (PredictionContext, Integer) -> SingletonPredictionContext
5
+
6
+ attr_reader parent: PredictionContext
7
+ attr_reader return_state: Integer
8
+
9
+ def initialize: (PredictionContext?, Integer) -> void
10
+ end
11
+ end
@@ -0,0 +1,15 @@
1
+
2
+
3
+ module Antlr4ruby
4
+ class AcceptStateInfo
5
+ attr_reader lexer_action_executor: LexerActionExecutor
6
+
7
+ private
8
+
9
+ attr_reader prediction: Integer
10
+
11
+ def get_lexer_action_executor: -> LexerActionExecutor
12
+
13
+ def get_prediction: -> Integer
14
+ end
15
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+
3
+ class AmbiguityInfo < DecisionEventInfo
4
+ attr_accessor ambig_alts: BitSet
5
+
6
+ def initialize: (Integer, ATNConfigSet, BitSet, _TokenStream, Integer, Integer, bool) -> void
7
+ end
8
+ end
@@ -0,0 +1,16 @@
1
+
2
+
3
+ module Antlr4ruby
4
+ class ConflictInfo
5
+ attr_accessor exact: bool
6
+
7
+ def get_conflicted_alts: -> BitSet
8
+
9
+ def is_exact?: -> bool
10
+
11
+ private
12
+
13
+ attr_accessor conflicted_alts: BitSet
14
+ end
15
+ end
16
+
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class ContextSensitivityInfo < DecisionEventInfo
4
+ end
5
+ end
@@ -0,0 +1,14 @@
1
+ module Antlr4ruby
2
+
3
+ class DecisionEventInfo
4
+ attr_reader configs: ATNConfigSet
5
+ attr_reader decision: Integer
6
+ attr_reader full_ctx: bool
7
+ attr_reader input: _TokenStream
8
+ attr_reader start_index: Integer
9
+ attr_reader stop_index: Integer
10
+
11
+ def initialize: (Integer, ATNConfigSet, _TokenStream, Integer, Integer, bool) -> void
12
+
13
+ end
14
+ end
@@ -0,0 +1,29 @@
1
+ module Antlr4ruby
2
+
3
+ class DecisionInfo
4
+ attr_reader ambiguities: Array[AmbiguityInfo]
5
+ attr_reader context_sensitivities: Array[ContextSensitivityInfo]
6
+ attr_reader decision: Integer
7
+
8
+ attr_reader errors: Array[ErrorInfo]
9
+ attr_accessor invocations: Integer
10
+
11
+ attr_accessor ll_atn_transitions: Integer
12
+ attr_accessor ll_dfa_transitions: Integer
13
+ attr_accessor ll_fallback: Integer
14
+ attr_accessor ll_max_look: Integer
15
+ attr_accessor ll_max_look_event: LookaheadEventInfo
16
+ attr_accessor ll_min_look: Integer
17
+ attr_accessor ll_total_look: Integer
18
+ attr_reader predicate_evals: Array[PredicateEvalInfo]
19
+ attr_accessor sll_atn_transitions: Integer
20
+ attr_accessor sll_dfa_transitions: Integer
21
+ attr_accessor sll_max_look: Integer
22
+ attr_accessor sll_max_look_event: LookaheadEventInfo
23
+ attr_accessor sll_min_look: Integer
24
+ attr_accessor sll_total_look: Integer
25
+ attr_accessor time_in_prediction: Integer
26
+
27
+ def initialize: (Integer, ATNConfigSet, _TokenStream, Integer, Integer, bool) -> void
28
+ end
29
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class ErrorInfo < DecisionEventInfo
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+ class LookaheadEventInfo < DecisionEventInfo
3
+ attr_accessor predicted_alt: Integer
4
+
5
+ def initialize: (Integer, ATNConfigSet, Integer, _TokenStream, Integer, Integer, bool) -> void
6
+ end
7
+
8
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+ class ParseInfo
3
+ attr_reader atn_simulator: ProfilingATNSimulator
4
+ def initialize: (ProfilingATNSimulator) -> void
5
+
6
+ def get_decision_info: -> Array[DecisionInfo]
7
+ end
8
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class PredicateEvalInfo < DecisionEventInfo
4
+ end
5
+
6
+ end
@@ -0,0 +1,83 @@
1
+ module Antlr4ruby
2
+
3
+ class LexerATNSimulator < ATNSimulator
4
+ MAX_DFA_EDGE: Integer
5
+ MIN_DFA_EDGE: Integer
6
+
7
+
8
+
9
+
10
+
11
+ class SimState
12
+
13
+ attr_accessor char_pos: Integer
14
+ attr_accessor dfa_state: DFAState?
15
+ attr_accessor index: Integer
16
+ attr_accessor line: Integer
17
+ def reset: -> void
18
+ end
19
+
20
+ @@debug: bool
21
+
22
+ @@dfa_debug: bool
23
+
24
+ def self.debug: -> bool
25
+
26
+ attr_accessor char_position_in_line: Integer
27
+ attr_accessor decision_to_dfa: Array[DFA]
28
+ attr_accessor line: Integer
29
+ attr_accessor mode: Integer
30
+ attr_accessor prev_accept: SimState
31
+ attr_reader recognizer: Lexer
32
+ attr_accessor start_index: Integer
33
+
34
+ def accept: (_CharStream, LexerActionExecutor, Integer, Integer, Integer, Integer) -> void
35
+
36
+ def add_dfa_edge: (DFAState, Integer, ATNConfigSet | DFAState) -> DFAState?
37
+
38
+ def add_dfa_state: (ATNConfigSet) -> DFAState
39
+
40
+ def capture_sim_state: (SimState, _CharStream, DFAState) -> void
41
+
42
+ def closure: (_CharStream, LexerATNConfig, ATNConfigSet, bool, bool, bool) -> bool
43
+
44
+ def compute_start_state: (_CharStream, ATNState) -> ATNConfigSet
45
+
46
+ def compute_target_state: (_CharStream, DFAState, Integer) -> DFAState
47
+
48
+ def consume: (_CharStream) -> void
49
+
50
+ def evaluate_predicate: (_CharStream, Integer, Integer, bool) -> bool
51
+
52
+ def exec_atn: (_CharStream) -> Integer
53
+
54
+ def fail_or_accept: (SimState, _CharStream, ATNConfigSet, Integer) -> Integer
55
+
56
+ def get_char_position_in_line: -> Integer
57
+
58
+ def get_dfa: (Integer) -> DFA
59
+
60
+ def get_epsilon_target: (_CharStream, LexerATNConfig, Transition, ATNConfigSet, bool, bool) -> LexerATNConfig
61
+
62
+ def get_existing_target_state: (DFAState, Integer) -> DFAState
63
+
64
+ def get_line: -> Integer
65
+
66
+ def get_reachable_config_set: (_CharStream, ATNConfigSet, ATNConfigSet, Integer) -> void
67
+
68
+ def get_reachable_target: (Transition, Integer) -> ATNState
69
+
70
+ def get_text: (_CharStream) -> String
71
+
72
+ def get_token_name: (Integer) -> String
73
+
74
+ def match: (_CharStream, Integer) -> Integer
75
+
76
+ def match_atn: (_CharStream) -> Integer
77
+
78
+ def set_char_position_in_line: (Integer) -> void
79
+
80
+ def set_line: (Integer) -> void
81
+
82
+ end
83
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class LL1Analyzer
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Antlr4ruby
2
+
3
+ class ParserATNSimulator < ATNSimulator
4
+ end
5
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class PredictionMode
4
+ end
5
+
6
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ class ProfilingATNSimulator < ParserATNSimulator
4
+ end
5
+
6
+ end
@@ -0,0 +1,50 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class ATNState
5
+ BASIC: Integer
6
+ BLOCK_END: Integer
7
+ BLOCK_START: Integer
8
+ INITIAL_NUM_TRANSITIONS: Integer
9
+
10
+ INVALID_STATE_NUMBER: Integer
11
+ INVALID_TYPE: Integer
12
+
13
+ LOOP_END: Integer
14
+ PLUS_BLOCK_START: Integer
15
+ PLUS_LOOP_BACK: Integer
16
+ RULE_START: Integer
17
+
18
+ RULE_STOP: Integer
19
+ STAR_BLOCK_START: Integer
20
+
21
+ STAR_LOOP_BACK: Integer
22
+ STAR_LOOP_ENTRY: Integer
23
+ TOKEN_START: Integer
24
+
25
+ @@serialization_names: Array[String]
26
+
27
+ attr_accessor atn: ATN?
28
+ attr_accessor epsilon_only_transitions: bool
29
+ attr_accessor next_token_within_rule: RangeSet[Integer]
30
+ attr_accessor rule_index: Integer
31
+ attr_accessor state_number: Integer
32
+ attr_reader transitions: Array[Transition]
33
+
34
+ def add_transition: (Transition, Integer) -> void
35
+
36
+ def get_number_of_transitions: -> Integer
37
+
38
+ def get_state_type: -> Integer
39
+
40
+ def get_transition: (Integer) -> Transition?
41
+
42
+ def only_has_epsilon_transitions?: -> bool
43
+
44
+ def remove_transition: (Integer) -> Transition
45
+
46
+ def set_rule_index: (Integer) -> void
47
+
48
+ def set_transition: (Integer, Transition) -> void
49
+ end
50
+ end
@@ -0,0 +1,6 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class BasicBlockStartState < BlockStartState
5
+ end
6
+ end
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class BasicState < ATNState
5
+ end
6
+
7
+ end
@@ -0,0 +1,7 @@
1
+ module Antlr4ruby
2
+
3
+ # @final
4
+ class BlockEndState < ATNState
5
+ attr_accessor start_state: BlockStartState
6
+ end
7
+ end
@@ -0,0 +1,8 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class BlockStartState < DecisionState
5
+ attr_accessor end_state: BlockEndState
6
+ end
7
+
8
+ end
@@ -0,0 +1,14 @@
1
+ module Antlr4ruby
2
+
3
+ # @abstract
4
+ class DecisionState < ATNState
5
+ @decision: Integer
6
+
7
+ @non_greedy: bool
8
+
9
+ attr_accessor decision: Integer
10
+ attr_accessor non_greedy: bool
11
+
12
+ def get_state_type: -> Integer
13
+ end
14
+ end