prism 2.0.0.rc1-x86_64-linux-gnu

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 (216) hide show
  1. checksums.yaml +7 -0
  2. data/BSDmakefile +58 -0
  3. data/CHANGELOG.md +870 -0
  4. data/CODE_OF_CONDUCT.md +76 -0
  5. data/CONTRIBUTING.md +58 -0
  6. data/LICENSE.md +7 -0
  7. data/Makefile +145 -0
  8. data/README.md +81 -0
  9. data/config.yml +4752 -0
  10. data/docs/build_system.md +119 -0
  11. data/docs/configuration.md +69 -0
  12. data/docs/cruby_compilation.md +27 -0
  13. data/docs/design.md +53 -0
  14. data/docs/encoding.md +121 -0
  15. data/docs/fuzzing.md +81 -0
  16. data/docs/heredocs.md +36 -0
  17. data/docs/javascript.md +133 -0
  18. data/docs/local_variable_depth.md +229 -0
  19. data/docs/mapping.md +117 -0
  20. data/docs/parser_translation.md +24 -0
  21. data/docs/parsing_rules.md +22 -0
  22. data/docs/releasing.md +147 -0
  23. data/docs/relocation.md +32 -0
  24. data/docs/ripper_translation.md +63 -0
  25. data/docs/ruby_api.md +45 -0
  26. data/docs/ruby_parser_translation.md +19 -0
  27. data/docs/serialization.md +230 -0
  28. data/docs/testing.md +72 -0
  29. data/ext/prism/api_node.c +7005 -0
  30. data/ext/prism/extconf.rb +126 -0
  31. data/ext/prism/extension.c +1783 -0
  32. data/ext/prism/extension.h +19 -0
  33. data/include/prism/arena.h +37 -0
  34. data/include/prism/ast.h +10371 -0
  35. data/include/prism/buffer.h +52 -0
  36. data/include/prism/comments.h +55 -0
  37. data/include/prism/compiler/accel.h +24 -0
  38. data/include/prism/compiler/align.h +36 -0
  39. data/include/prism/compiler/assume.h +25 -0
  40. data/include/prism/compiler/exported.h +24 -0
  41. data/include/prism/compiler/fallthrough.h +22 -0
  42. data/include/prism/compiler/filesystem.h +32 -0
  43. data/include/prism/compiler/flex_array.h +19 -0
  44. data/include/prism/compiler/force_inline.h +21 -0
  45. data/include/prism/compiler/format.h +25 -0
  46. data/include/prism/compiler/inline.h +17 -0
  47. data/include/prism/compiler/nodiscard.h +22 -0
  48. data/include/prism/compiler/nonnull.h +18 -0
  49. data/include/prism/compiler/unused.h +18 -0
  50. data/include/prism/constant_pool.h +81 -0
  51. data/include/prism/diagnostic.h +93 -0
  52. data/include/prism/errors_format.h +53 -0
  53. data/include/prism/excludes.h +29 -0
  54. data/include/prism/integer.h +41 -0
  55. data/include/prism/internal/allocator.h +68 -0
  56. data/include/prism/internal/allocator_debug.h +88 -0
  57. data/include/prism/internal/arena.h +108 -0
  58. data/include/prism/internal/bit.h +42 -0
  59. data/include/prism/internal/buffer.h +91 -0
  60. data/include/prism/internal/char.h +145 -0
  61. data/include/prism/internal/comments.h +53 -0
  62. data/include/prism/internal/constant_pool.h +152 -0
  63. data/include/prism/internal/diagnostic.h +389 -0
  64. data/include/prism/internal/encoding.h +242 -0
  65. data/include/prism/internal/integer.h +68 -0
  66. data/include/prism/internal/isinf.h +16 -0
  67. data/include/prism/internal/line_offset_list.h +34 -0
  68. data/include/prism/internal/list.h +62 -0
  69. data/include/prism/internal/magic_comments.h +23 -0
  70. data/include/prism/internal/memchr.h +15 -0
  71. data/include/prism/internal/node.h +38 -0
  72. data/include/prism/internal/options.h +232 -0
  73. data/include/prism/internal/parser.h +984 -0
  74. data/include/prism/internal/regexp.h +26 -0
  75. data/include/prism/internal/serialize.h +39 -0
  76. data/include/prism/internal/source.h +72 -0
  77. data/include/prism/internal/static_literals.h +100 -0
  78. data/include/prism/internal/stringy.h +35 -0
  79. data/include/prism/internal/strncasecmp.h +18 -0
  80. data/include/prism/internal/strpbrk.h +33 -0
  81. data/include/prism/internal/tokens.h +11 -0
  82. data/include/prism/json.h +32 -0
  83. data/include/prism/line_offset_list.h +61 -0
  84. data/include/prism/magic_comments.h +35 -0
  85. data/include/prism/node.h +94 -0
  86. data/include/prism/options.h +354 -0
  87. data/include/prism/parser.h +404 -0
  88. data/include/prism/prettyprint.h +31 -0
  89. data/include/prism/serialize.h +115 -0
  90. data/include/prism/source.h +155 -0
  91. data/include/prism/stream.h +28 -0
  92. data/include/prism/string_query.h +63 -0
  93. data/include/prism/stringy.h +72 -0
  94. data/include/prism/version.h +38 -0
  95. data/include/prism.h +131 -0
  96. data/lib/prism/3.3/prism.so +0 -0
  97. data/lib/prism/3.4/prism.so +0 -0
  98. data/lib/prism/4.0/prism.so +0 -0
  99. data/lib/prism/compiler.rb +815 -0
  100. data/lib/prism/desugar_compiler.rb +463 -0
  101. data/lib/prism/dispatcher.rb +2383 -0
  102. data/lib/prism/dot_visitor.rb +4848 -0
  103. data/lib/prism/dsl.rb +1369 -0
  104. data/lib/prism/ffi.rb +740 -0
  105. data/lib/prism/inspect_visitor.rb +2425 -0
  106. data/lib/prism/lex_compat.rb +953 -0
  107. data/lib/prism/mutation_compiler.rb +780 -0
  108. data/lib/prism/node.rb +33204 -0
  109. data/lib/prism/node_ext.rb +504 -0
  110. data/lib/prism/node_find.rb +215 -0
  111. data/lib/prism/parse_result/errors.rb +72 -0
  112. data/lib/prism/parse_result/newlines.rb +423 -0
  113. data/lib/prism/parse_result.rb +1221 -0
  114. data/lib/prism/pattern.rb +314 -0
  115. data/lib/prism/polyfill/append_as_bytes.rb +15 -0
  116. data/lib/prism/polyfill/byteindex.rb +13 -0
  117. data/lib/prism/polyfill/scan_byte.rb +14 -0
  118. data/lib/prism/polyfill/unpack1.rb +14 -0
  119. data/lib/prism/polyfill/warn.rb +36 -0
  120. data/lib/prism/reflection.rb +427 -0
  121. data/lib/prism/relocation.rb +567 -0
  122. data/lib/prism/serialize.rb +5308 -0
  123. data/lib/prism/string_query.rb +46 -0
  124. data/lib/prism/translation/parser/builder.rb +70 -0
  125. data/lib/prism/translation/parser/compiler.rb +2226 -0
  126. data/lib/prism/translation/parser/lexer.rb +769 -0
  127. data/lib/prism/translation/parser.rb +376 -0
  128. data/lib/prism/translation/parser_current.rb +26 -0
  129. data/lib/prism/translation/parser_versions.rb +36 -0
  130. data/lib/prism/translation/ripper/filter.rb +53 -0
  131. data/lib/prism/translation/ripper/lexer.rb +133 -0
  132. data/lib/prism/translation/ripper/sexp.rb +118 -0
  133. data/lib/prism/translation/ripper/shim.rb +7 -0
  134. data/lib/prism/translation/ripper.rb +4278 -0
  135. data/lib/prism/translation/ruby_parser.rb +1721 -0
  136. data/lib/prism/translation.rb +20 -0
  137. data/lib/prism/visitor.rb +1440 -0
  138. data/lib/prism.rb +168 -0
  139. data/prism.gemspec +234 -0
  140. data/rbi/generated/prism/compiler.rbi +489 -0
  141. data/rbi/generated/prism/desugar_compiler.rbi +306 -0
  142. data/rbi/generated/prism/dispatcher.rbi +1138 -0
  143. data/rbi/generated/prism/dot_visitor.rbi +618 -0
  144. data/rbi/generated/prism/dsl.rbi +751 -0
  145. data/rbi/generated/prism/inspect_visitor.rbi +503 -0
  146. data/rbi/generated/prism/lex_compat.rbi +162 -0
  147. data/rbi/generated/prism/mutation_compiler.rbi +464 -0
  148. data/rbi/generated/prism/node.rbi +13681 -0
  149. data/rbi/generated/prism/node_ext.rbi +259 -0
  150. data/rbi/generated/prism/node_find.rbi +79 -0
  151. data/rbi/generated/prism/parse_result/errors.rbi +21 -0
  152. data/rbi/generated/prism/parse_result/newlines.rbi +208 -0
  153. data/rbi/generated/prism/parse_result.rbi +764 -0
  154. data/rbi/generated/prism/pattern.rbi +134 -0
  155. data/rbi/generated/prism/reflection.rbi +89 -0
  156. data/rbi/generated/prism/relocation.rbi +329 -0
  157. data/rbi/generated/prism/serialize.rbi +181 -0
  158. data/rbi/generated/prism/string_query.rbi +36 -0
  159. data/rbi/generated/prism/translation.rbi +7 -0
  160. data/rbi/generated/prism/visitor.rbi +650 -0
  161. data/rbi/generated/prism.rbi +86 -0
  162. data/rbi/prism/translation/parser.rbi +11 -0
  163. data/rbi/prism/translation/parser_versions.rbi +28 -0
  164. data/rbi/prism/translation/ripper.rbi +15 -0
  165. data/rbi/rubyvm/node_find.rbi +14 -0
  166. data/sig/generated/prism/compiler.rbs +492 -0
  167. data/sig/generated/prism/desugar_compiler.rbs +305 -0
  168. data/sig/generated/prism/dispatcher.rbs +1292 -0
  169. data/sig/generated/prism/dot_visitor.rbs +635 -0
  170. data/sig/generated/prism/dsl.rbs +928 -0
  171. data/sig/generated/prism/inspect_visitor.rbs +509 -0
  172. data/sig/generated/prism/lex_compat.rbs +166 -0
  173. data/sig/generated/prism/mutation_compiler.rbs +464 -0
  174. data/sig/generated/prism/node.rbs +20160 -0
  175. data/sig/generated/prism/node_ext.rbs +290 -0
  176. data/sig/generated/prism/node_find.rbs +90 -0
  177. data/sig/generated/prism/parse_result/errors.rbs +22 -0
  178. data/sig/generated/prism/parse_result/newlines.rbs +223 -0
  179. data/sig/generated/prism/parse_result.rbs +859 -0
  180. data/sig/generated/prism/pattern.rbs +156 -0
  181. data/sig/generated/prism/reflection.rbs +101 -0
  182. data/sig/generated/prism/relocation.rbs +428 -0
  183. data/sig/generated/prism/serialize.rbs +195 -0
  184. data/sig/generated/prism/string_query.rbs +36 -0
  185. data/sig/generated/prism/translation.rbs +8 -0
  186. data/sig/generated/prism/visitor.rbs +1111 -0
  187. data/sig/generated/prism.rbs +84 -0
  188. data/sig/manifest.yaml +2 -0
  189. data/src/arena.c +117 -0
  190. data/src/buffer.c +380 -0
  191. data/src/char.c +289 -0
  192. data/src/comments.c +454 -0
  193. data/src/constant_pool.c +406 -0
  194. data/src/diagnostic.c +886 -0
  195. data/src/encoding.c +5345 -0
  196. data/src/errors_format.c +519 -0
  197. data/src/integer.c +681 -0
  198. data/src/json.c +5733 -0
  199. data/src/line_offset_list.c +100 -0
  200. data/src/list.c +24 -0
  201. data/src/memchr.c +37 -0
  202. data/src/node.c +4515 -0
  203. data/src/options.c +451 -0
  204. data/src/parser.c +349 -0
  205. data/src/prettyprint.c +9024 -0
  206. data/src/prism.c +23739 -0
  207. data/src/regexp.c +1706 -0
  208. data/src/serialize.c +2309 -0
  209. data/src/source.c +518 -0
  210. data/src/static_literals.c +685 -0
  211. data/src/string_query.c +166 -0
  212. data/src/stringy.c +91 -0
  213. data/src/strncasecmp.c +37 -0
  214. data/src/strpbrk.c +447 -0
  215. data/src/tokens.c +724 -0
  216. metadata +259 -0
@@ -0,0 +1,464 @@
1
+ # typed: true
2
+
3
+ module Prism
4
+ # This visitor walks through the tree and copies each node as it is being
5
+ # visited. This is useful for consumers that want to mutate the tree, as you
6
+ # can change subtrees in place without effecting the rest of the tree.
7
+ class MutationCompiler < Compiler
8
+ sig { params(arg0: AliasGlobalVariableNode).returns(::T.nilable(Node)) }
9
+ def visit_alias_global_variable_node(arg0); end
10
+
11
+ sig { params(arg0: AliasMethodNode).returns(::T.nilable(Node)) }
12
+ def visit_alias_method_node(arg0); end
13
+
14
+ sig { params(arg0: AlternationPatternNode).returns(::T.nilable(Node)) }
15
+ def visit_alternation_pattern_node(arg0); end
16
+
17
+ sig { params(arg0: AndNode).returns(::T.nilable(Node)) }
18
+ def visit_and_node(arg0); end
19
+
20
+ sig { params(arg0: ArgumentsNode).returns(::T.nilable(Node)) }
21
+ def visit_arguments_node(arg0); end
22
+
23
+ sig { params(arg0: ArrayNode).returns(::T.nilable(Node)) }
24
+ def visit_array_node(arg0); end
25
+
26
+ sig { params(arg0: ArrayPatternNode).returns(::T.nilable(Node)) }
27
+ def visit_array_pattern_node(arg0); end
28
+
29
+ sig { params(arg0: AssocNode).returns(::T.nilable(Node)) }
30
+ def visit_assoc_node(arg0); end
31
+
32
+ sig { params(arg0: AssocSplatNode).returns(::T.nilable(Node)) }
33
+ def visit_assoc_splat_node(arg0); end
34
+
35
+ sig { params(arg0: BackReferenceReadNode).returns(::T.nilable(Node)) }
36
+ def visit_back_reference_read_node(arg0); end
37
+
38
+ sig { params(arg0: BeginNode).returns(::T.nilable(Node)) }
39
+ def visit_begin_node(arg0); end
40
+
41
+ sig { params(arg0: BlockArgumentNode).returns(::T.nilable(Node)) }
42
+ def visit_block_argument_node(arg0); end
43
+
44
+ sig { params(arg0: BlockLocalVariableNode).returns(::T.nilable(Node)) }
45
+ def visit_block_local_variable_node(arg0); end
46
+
47
+ sig { params(arg0: BlockNode).returns(::T.nilable(Node)) }
48
+ def visit_block_node(arg0); end
49
+
50
+ sig { params(arg0: BlockParameterNode).returns(::T.nilable(Node)) }
51
+ def visit_block_parameter_node(arg0); end
52
+
53
+ sig { params(arg0: BlockParametersNode).returns(::T.nilable(Node)) }
54
+ def visit_block_parameters_node(arg0); end
55
+
56
+ sig { params(arg0: BreakNode).returns(::T.nilable(Node)) }
57
+ def visit_break_node(arg0); end
58
+
59
+ sig { params(arg0: CallAndWriteNode).returns(::T.nilable(Node)) }
60
+ def visit_call_and_write_node(arg0); end
61
+
62
+ sig { params(arg0: CallNode).returns(::T.nilable(Node)) }
63
+ def visit_call_node(arg0); end
64
+
65
+ sig { params(arg0: CallOperatorWriteNode).returns(::T.nilable(Node)) }
66
+ def visit_call_operator_write_node(arg0); end
67
+
68
+ sig { params(arg0: CallOrWriteNode).returns(::T.nilable(Node)) }
69
+ def visit_call_or_write_node(arg0); end
70
+
71
+ sig { params(arg0: CallTargetNode).returns(::T.nilable(Node)) }
72
+ def visit_call_target_node(arg0); end
73
+
74
+ sig { params(arg0: CapturePatternNode).returns(::T.nilable(Node)) }
75
+ def visit_capture_pattern_node(arg0); end
76
+
77
+ sig { params(arg0: CaseMatchNode).returns(::T.nilable(Node)) }
78
+ def visit_case_match_node(arg0); end
79
+
80
+ sig { params(arg0: CaseNode).returns(::T.nilable(Node)) }
81
+ def visit_case_node(arg0); end
82
+
83
+ sig { params(arg0: ClassNode).returns(::T.nilable(Node)) }
84
+ def visit_class_node(arg0); end
85
+
86
+ sig { params(arg0: ClassVariableAndWriteNode).returns(::T.nilable(Node)) }
87
+ def visit_class_variable_and_write_node(arg0); end
88
+
89
+ sig { params(arg0: ClassVariableOperatorWriteNode).returns(::T.nilable(Node)) }
90
+ def visit_class_variable_operator_write_node(arg0); end
91
+
92
+ sig { params(arg0: ClassVariableOrWriteNode).returns(::T.nilable(Node)) }
93
+ def visit_class_variable_or_write_node(arg0); end
94
+
95
+ sig { params(arg0: ClassVariableReadNode).returns(::T.nilable(Node)) }
96
+ def visit_class_variable_read_node(arg0); end
97
+
98
+ sig { params(arg0: ClassVariableTargetNode).returns(::T.nilable(Node)) }
99
+ def visit_class_variable_target_node(arg0); end
100
+
101
+ sig { params(arg0: ClassVariableWriteNode).returns(::T.nilable(Node)) }
102
+ def visit_class_variable_write_node(arg0); end
103
+
104
+ sig { params(arg0: ConstantAndWriteNode).returns(::T.nilable(Node)) }
105
+ def visit_constant_and_write_node(arg0); end
106
+
107
+ sig { params(arg0: ConstantOperatorWriteNode).returns(::T.nilable(Node)) }
108
+ def visit_constant_operator_write_node(arg0); end
109
+
110
+ sig { params(arg0: ConstantOrWriteNode).returns(::T.nilable(Node)) }
111
+ def visit_constant_or_write_node(arg0); end
112
+
113
+ sig { params(arg0: ConstantPathAndWriteNode).returns(::T.nilable(Node)) }
114
+ def visit_constant_path_and_write_node(arg0); end
115
+
116
+ sig { params(arg0: ConstantPathNode).returns(::T.nilable(Node)) }
117
+ def visit_constant_path_node(arg0); end
118
+
119
+ sig { params(arg0: ConstantPathOperatorWriteNode).returns(::T.nilable(Node)) }
120
+ def visit_constant_path_operator_write_node(arg0); end
121
+
122
+ sig { params(arg0: ConstantPathOrWriteNode).returns(::T.nilable(Node)) }
123
+ def visit_constant_path_or_write_node(arg0); end
124
+
125
+ sig { params(arg0: ConstantPathTargetNode).returns(::T.nilable(Node)) }
126
+ def visit_constant_path_target_node(arg0); end
127
+
128
+ sig { params(arg0: ConstantPathWriteNode).returns(::T.nilable(Node)) }
129
+ def visit_constant_path_write_node(arg0); end
130
+
131
+ sig { params(arg0: ConstantReadNode).returns(::T.nilable(Node)) }
132
+ def visit_constant_read_node(arg0); end
133
+
134
+ sig { params(arg0: ConstantTargetNode).returns(::T.nilable(Node)) }
135
+ def visit_constant_target_node(arg0); end
136
+
137
+ sig { params(arg0: ConstantWriteNode).returns(::T.nilable(Node)) }
138
+ def visit_constant_write_node(arg0); end
139
+
140
+ sig { params(arg0: DefNode).returns(::T.nilable(Node)) }
141
+ def visit_def_node(arg0); end
142
+
143
+ sig { params(arg0: DefinedNode).returns(::T.nilable(Node)) }
144
+ def visit_defined_node(arg0); end
145
+
146
+ sig { params(arg0: ElseNode).returns(::T.nilable(Node)) }
147
+ def visit_else_node(arg0); end
148
+
149
+ sig { params(arg0: EmbeddedStatementsNode).returns(::T.nilable(Node)) }
150
+ def visit_embedded_statements_node(arg0); end
151
+
152
+ sig { params(arg0: EmbeddedVariableNode).returns(::T.nilable(Node)) }
153
+ def visit_embedded_variable_node(arg0); end
154
+
155
+ sig { params(arg0: EnsureNode).returns(::T.nilable(Node)) }
156
+ def visit_ensure_node(arg0); end
157
+
158
+ sig { params(arg0: ErrorRecoveryNode).returns(::T.nilable(Node)) }
159
+ def visit_error_recovery_node(arg0); end
160
+
161
+ sig { params(arg0: FalseNode).returns(::T.nilable(Node)) }
162
+ def visit_false_node(arg0); end
163
+
164
+ sig { params(arg0: FindPatternNode).returns(::T.nilable(Node)) }
165
+ def visit_find_pattern_node(arg0); end
166
+
167
+ sig { params(arg0: FlipFlopNode).returns(::T.nilable(Node)) }
168
+ def visit_flip_flop_node(arg0); end
169
+
170
+ sig { params(arg0: FloatNode).returns(::T.nilable(Node)) }
171
+ def visit_float_node(arg0); end
172
+
173
+ sig { params(arg0: ForNode).returns(::T.nilable(Node)) }
174
+ def visit_for_node(arg0); end
175
+
176
+ sig { params(arg0: ForwardingArgumentsNode).returns(::T.nilable(Node)) }
177
+ def visit_forwarding_arguments_node(arg0); end
178
+
179
+ sig { params(arg0: ForwardingParameterNode).returns(::T.nilable(Node)) }
180
+ def visit_forwarding_parameter_node(arg0); end
181
+
182
+ sig { params(arg0: ForwardingSuperNode).returns(::T.nilable(Node)) }
183
+ def visit_forwarding_super_node(arg0); end
184
+
185
+ sig { params(arg0: GlobalVariableAndWriteNode).returns(::T.nilable(Node)) }
186
+ def visit_global_variable_and_write_node(arg0); end
187
+
188
+ sig { params(arg0: GlobalVariableOperatorWriteNode).returns(::T.nilable(Node)) }
189
+ def visit_global_variable_operator_write_node(arg0); end
190
+
191
+ sig { params(arg0: GlobalVariableOrWriteNode).returns(::T.nilable(Node)) }
192
+ def visit_global_variable_or_write_node(arg0); end
193
+
194
+ sig { params(arg0: GlobalVariableReadNode).returns(::T.nilable(Node)) }
195
+ def visit_global_variable_read_node(arg0); end
196
+
197
+ sig { params(arg0: GlobalVariableTargetNode).returns(::T.nilable(Node)) }
198
+ def visit_global_variable_target_node(arg0); end
199
+
200
+ sig { params(arg0: GlobalVariableWriteNode).returns(::T.nilable(Node)) }
201
+ def visit_global_variable_write_node(arg0); end
202
+
203
+ sig { params(arg0: HashNode).returns(::T.nilable(Node)) }
204
+ def visit_hash_node(arg0); end
205
+
206
+ sig { params(arg0: HashPatternNode).returns(::T.nilable(Node)) }
207
+ def visit_hash_pattern_node(arg0); end
208
+
209
+ sig { params(arg0: IfNode).returns(::T.nilable(Node)) }
210
+ def visit_if_node(arg0); end
211
+
212
+ sig { params(arg0: ImaginaryNode).returns(::T.nilable(Node)) }
213
+ def visit_imaginary_node(arg0); end
214
+
215
+ sig { params(arg0: ImplicitNode).returns(::T.nilable(Node)) }
216
+ def visit_implicit_node(arg0); end
217
+
218
+ sig { params(arg0: ImplicitRestNode).returns(::T.nilable(Node)) }
219
+ def visit_implicit_rest_node(arg0); end
220
+
221
+ sig { params(arg0: InNode).returns(::T.nilable(Node)) }
222
+ def visit_in_node(arg0); end
223
+
224
+ sig { params(arg0: IndexAndWriteNode).returns(::T.nilable(Node)) }
225
+ def visit_index_and_write_node(arg0); end
226
+
227
+ sig { params(arg0: IndexOperatorWriteNode).returns(::T.nilable(Node)) }
228
+ def visit_index_operator_write_node(arg0); end
229
+
230
+ sig { params(arg0: IndexOrWriteNode).returns(::T.nilable(Node)) }
231
+ def visit_index_or_write_node(arg0); end
232
+
233
+ sig { params(arg0: IndexTargetNode).returns(::T.nilable(Node)) }
234
+ def visit_index_target_node(arg0); end
235
+
236
+ sig { params(arg0: InstanceVariableAndWriteNode).returns(::T.nilable(Node)) }
237
+ def visit_instance_variable_and_write_node(arg0); end
238
+
239
+ sig { params(arg0: InstanceVariableOperatorWriteNode).returns(::T.nilable(Node)) }
240
+ def visit_instance_variable_operator_write_node(arg0); end
241
+
242
+ sig { params(arg0: InstanceVariableOrWriteNode).returns(::T.nilable(Node)) }
243
+ def visit_instance_variable_or_write_node(arg0); end
244
+
245
+ sig { params(arg0: InstanceVariableReadNode).returns(::T.nilable(Node)) }
246
+ def visit_instance_variable_read_node(arg0); end
247
+
248
+ sig { params(arg0: InstanceVariableTargetNode).returns(::T.nilable(Node)) }
249
+ def visit_instance_variable_target_node(arg0); end
250
+
251
+ sig { params(arg0: InstanceVariableWriteNode).returns(::T.nilable(Node)) }
252
+ def visit_instance_variable_write_node(arg0); end
253
+
254
+ sig { params(arg0: IntegerNode).returns(::T.nilable(Node)) }
255
+ def visit_integer_node(arg0); end
256
+
257
+ sig { params(arg0: InterpolatedMatchLastLineNode).returns(::T.nilable(Node)) }
258
+ def visit_interpolated_match_last_line_node(arg0); end
259
+
260
+ sig { params(arg0: InterpolatedRegularExpressionNode).returns(::T.nilable(Node)) }
261
+ def visit_interpolated_regular_expression_node(arg0); end
262
+
263
+ sig { params(arg0: InterpolatedStringNode).returns(::T.nilable(Node)) }
264
+ def visit_interpolated_string_node(arg0); end
265
+
266
+ sig { params(arg0: InterpolatedSymbolNode).returns(::T.nilable(Node)) }
267
+ def visit_interpolated_symbol_node(arg0); end
268
+
269
+ sig { params(arg0: InterpolatedXStringNode).returns(::T.nilable(Node)) }
270
+ def visit_interpolated_x_string_node(arg0); end
271
+
272
+ sig { params(arg0: ItLocalVariableReadNode).returns(::T.nilable(Node)) }
273
+ def visit_it_local_variable_read_node(arg0); end
274
+
275
+ sig { params(arg0: ItParametersNode).returns(::T.nilable(Node)) }
276
+ def visit_it_parameters_node(arg0); end
277
+
278
+ sig { params(arg0: KeywordHashNode).returns(::T.nilable(Node)) }
279
+ def visit_keyword_hash_node(arg0); end
280
+
281
+ sig { params(arg0: KeywordRestParameterNode).returns(::T.nilable(Node)) }
282
+ def visit_keyword_rest_parameter_node(arg0); end
283
+
284
+ sig { params(arg0: LambdaNode).returns(::T.nilable(Node)) }
285
+ def visit_lambda_node(arg0); end
286
+
287
+ sig { params(arg0: LocalVariableAndWriteNode).returns(::T.nilable(Node)) }
288
+ def visit_local_variable_and_write_node(arg0); end
289
+
290
+ sig { params(arg0: LocalVariableOperatorWriteNode).returns(::T.nilable(Node)) }
291
+ def visit_local_variable_operator_write_node(arg0); end
292
+
293
+ sig { params(arg0: LocalVariableOrWriteNode).returns(::T.nilable(Node)) }
294
+ def visit_local_variable_or_write_node(arg0); end
295
+
296
+ sig { params(arg0: LocalVariableReadNode).returns(::T.nilable(Node)) }
297
+ def visit_local_variable_read_node(arg0); end
298
+
299
+ sig { params(arg0: LocalVariableTargetNode).returns(::T.nilable(Node)) }
300
+ def visit_local_variable_target_node(arg0); end
301
+
302
+ sig { params(arg0: LocalVariableWriteNode).returns(::T.nilable(Node)) }
303
+ def visit_local_variable_write_node(arg0); end
304
+
305
+ sig { params(arg0: MatchLastLineNode).returns(::T.nilable(Node)) }
306
+ def visit_match_last_line_node(arg0); end
307
+
308
+ sig { params(arg0: MatchPredicateNode).returns(::T.nilable(Node)) }
309
+ def visit_match_predicate_node(arg0); end
310
+
311
+ sig { params(arg0: MatchRequiredNode).returns(::T.nilable(Node)) }
312
+ def visit_match_required_node(arg0); end
313
+
314
+ sig { params(arg0: MatchWriteNode).returns(::T.nilable(Node)) }
315
+ def visit_match_write_node(arg0); end
316
+
317
+ sig { params(arg0: ModuleNode).returns(::T.nilable(Node)) }
318
+ def visit_module_node(arg0); end
319
+
320
+ sig { params(arg0: MultiTargetNode).returns(::T.nilable(Node)) }
321
+ def visit_multi_target_node(arg0); end
322
+
323
+ sig { params(arg0: MultiWriteNode).returns(::T.nilable(Node)) }
324
+ def visit_multi_write_node(arg0); end
325
+
326
+ sig { params(arg0: NextNode).returns(::T.nilable(Node)) }
327
+ def visit_next_node(arg0); end
328
+
329
+ sig { params(arg0: NilNode).returns(::T.nilable(Node)) }
330
+ def visit_nil_node(arg0); end
331
+
332
+ sig { params(arg0: NoBlockParameterNode).returns(::T.nilable(Node)) }
333
+ def visit_no_block_parameter_node(arg0); end
334
+
335
+ sig { params(arg0: NoKeywordsParameterNode).returns(::T.nilable(Node)) }
336
+ def visit_no_keywords_parameter_node(arg0); end
337
+
338
+ sig { params(arg0: NumberedParametersNode).returns(::T.nilable(Node)) }
339
+ def visit_numbered_parameters_node(arg0); end
340
+
341
+ sig { params(arg0: NumberedReferenceReadNode).returns(::T.nilable(Node)) }
342
+ def visit_numbered_reference_read_node(arg0); end
343
+
344
+ sig { params(arg0: OptionalKeywordParameterNode).returns(::T.nilable(Node)) }
345
+ def visit_optional_keyword_parameter_node(arg0); end
346
+
347
+ sig { params(arg0: OptionalParameterNode).returns(::T.nilable(Node)) }
348
+ def visit_optional_parameter_node(arg0); end
349
+
350
+ sig { params(arg0: OrNode).returns(::T.nilable(Node)) }
351
+ def visit_or_node(arg0); end
352
+
353
+ sig { params(arg0: ParametersNode).returns(::T.nilable(Node)) }
354
+ def visit_parameters_node(arg0); end
355
+
356
+ sig { params(arg0: ParenthesesNode).returns(::T.nilable(Node)) }
357
+ def visit_parentheses_node(arg0); end
358
+
359
+ sig { params(arg0: PinnedExpressionNode).returns(::T.nilable(Node)) }
360
+ def visit_pinned_expression_node(arg0); end
361
+
362
+ sig { params(arg0: PinnedVariableNode).returns(::T.nilable(Node)) }
363
+ def visit_pinned_variable_node(arg0); end
364
+
365
+ sig { params(arg0: PostExecutionNode).returns(::T.nilable(Node)) }
366
+ def visit_post_execution_node(arg0); end
367
+
368
+ sig { params(arg0: PreExecutionNode).returns(::T.nilable(Node)) }
369
+ def visit_pre_execution_node(arg0); end
370
+
371
+ sig { params(arg0: ProgramNode).returns(::T.nilable(Node)) }
372
+ def visit_program_node(arg0); end
373
+
374
+ sig { params(arg0: RangeNode).returns(::T.nilable(Node)) }
375
+ def visit_range_node(arg0); end
376
+
377
+ sig { params(arg0: RationalNode).returns(::T.nilable(Node)) }
378
+ def visit_rational_node(arg0); end
379
+
380
+ sig { params(arg0: RedoNode).returns(::T.nilable(Node)) }
381
+ def visit_redo_node(arg0); end
382
+
383
+ sig { params(arg0: RegularExpressionNode).returns(::T.nilable(Node)) }
384
+ def visit_regular_expression_node(arg0); end
385
+
386
+ sig { params(arg0: RequiredKeywordParameterNode).returns(::T.nilable(Node)) }
387
+ def visit_required_keyword_parameter_node(arg0); end
388
+
389
+ sig { params(arg0: RequiredParameterNode).returns(::T.nilable(Node)) }
390
+ def visit_required_parameter_node(arg0); end
391
+
392
+ sig { params(arg0: RescueModifierNode).returns(::T.nilable(Node)) }
393
+ def visit_rescue_modifier_node(arg0); end
394
+
395
+ sig { params(arg0: RescueNode).returns(::T.nilable(Node)) }
396
+ def visit_rescue_node(arg0); end
397
+
398
+ sig { params(arg0: RestParameterNode).returns(::T.nilable(Node)) }
399
+ def visit_rest_parameter_node(arg0); end
400
+
401
+ sig { params(arg0: RetryNode).returns(::T.nilable(Node)) }
402
+ def visit_retry_node(arg0); end
403
+
404
+ sig { params(arg0: ReturnNode).returns(::T.nilable(Node)) }
405
+ def visit_return_node(arg0); end
406
+
407
+ sig { params(arg0: SelfNode).returns(::T.nilable(Node)) }
408
+ def visit_self_node(arg0); end
409
+
410
+ sig { params(arg0: ShareableConstantNode).returns(::T.nilable(Node)) }
411
+ def visit_shareable_constant_node(arg0); end
412
+
413
+ sig { params(arg0: SingletonClassNode).returns(::T.nilable(Node)) }
414
+ def visit_singleton_class_node(arg0); end
415
+
416
+ sig { params(arg0: SourceEncodingNode).returns(::T.nilable(Node)) }
417
+ def visit_source_encoding_node(arg0); end
418
+
419
+ sig { params(arg0: SourceFileNode).returns(::T.nilable(Node)) }
420
+ def visit_source_file_node(arg0); end
421
+
422
+ sig { params(arg0: SourceLineNode).returns(::T.nilable(Node)) }
423
+ def visit_source_line_node(arg0); end
424
+
425
+ sig { params(arg0: SplatNode).returns(::T.nilable(Node)) }
426
+ def visit_splat_node(arg0); end
427
+
428
+ sig { params(arg0: StatementsNode).returns(::T.nilable(Node)) }
429
+ def visit_statements_node(arg0); end
430
+
431
+ sig { params(arg0: StringNode).returns(::T.nilable(Node)) }
432
+ def visit_string_node(arg0); end
433
+
434
+ sig { params(arg0: SuperNode).returns(::T.nilable(Node)) }
435
+ def visit_super_node(arg0); end
436
+
437
+ sig { params(arg0: SymbolNode).returns(::T.nilable(Node)) }
438
+ def visit_symbol_node(arg0); end
439
+
440
+ sig { params(arg0: TrueNode).returns(::T.nilable(Node)) }
441
+ def visit_true_node(arg0); end
442
+
443
+ sig { params(arg0: UndefNode).returns(::T.nilable(Node)) }
444
+ def visit_undef_node(arg0); end
445
+
446
+ sig { params(arg0: UnlessNode).returns(::T.nilable(Node)) }
447
+ def visit_unless_node(arg0); end
448
+
449
+ sig { params(arg0: UntilNode).returns(::T.nilable(Node)) }
450
+ def visit_until_node(arg0); end
451
+
452
+ sig { params(arg0: WhenNode).returns(::T.nilable(Node)) }
453
+ def visit_when_node(arg0); end
454
+
455
+ sig { params(arg0: WhileNode).returns(::T.nilable(Node)) }
456
+ def visit_while_node(arg0); end
457
+
458
+ sig { params(arg0: XStringNode).returns(::T.nilable(Node)) }
459
+ def visit_x_string_node(arg0); end
460
+
461
+ sig { params(arg0: YieldNode).returns(::T.nilable(Node)) }
462
+ def visit_yield_node(arg0); end
463
+ end
464
+ end