prism 1.9.0 → 2.0.0.rc2
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +88 -0
- data/CODE_OF_CONDUCT.md +1 -1
- data/LICENSE.md +1 -1
- data/Makefile +41 -12
- data/README.md +35 -97
- data/config.yml +174 -161
- data/docs/build_system.md +2 -2
- data/docs/configuration.md +5 -4
- data/docs/encoding.md +2 -2
- data/docs/fuzzing.md +4 -11
- data/docs/javascript.md +19 -4
- data/docs/mapping.md +1 -1
- data/docs/releasing.md +77 -5
- data/docs/relocation.md +2 -4
- data/docs/serialization.md +22 -24
- data/docs/testing.md +46 -29
- data/ext/prism/api_node.c +1461 -1401
- data/ext/prism/extconf.rb +3 -4
- data/ext/prism/extension.c +796 -422
- data/ext/prism/extension.h +3 -3
- data/include/prism/arena.h +37 -0
- data/include/prism/ast.h +2727 -610
- data/include/prism/buffer.h +52 -0
- data/include/prism/comments.h +55 -0
- data/include/prism/compiler/accel.h +26 -0
- data/include/prism/compiler/align.h +36 -0
- data/include/prism/compiler/assume.h +25 -0
- data/include/prism/compiler/bswap.h +46 -0
- data/include/prism/compiler/endianness.h +34 -0
- data/include/prism/compiler/exported.h +24 -0
- data/include/prism/compiler/fallthrough.h +22 -0
- data/include/prism/compiler/filesystem.h +32 -0
- data/include/prism/compiler/flex_array.h +19 -0
- data/include/prism/compiler/force_inline.h +21 -0
- data/include/prism/compiler/format.h +25 -0
- data/include/prism/compiler/inline.h +17 -0
- data/include/prism/compiler/nodiscard.h +22 -0
- data/include/prism/compiler/nonnull.h +18 -0
- data/include/prism/compiler/unused.h +18 -0
- data/include/prism/constant_pool.h +81 -0
- data/include/prism/diagnostic.h +38 -403
- data/include/prism/errors_format.h +53 -0
- data/include/prism/excludes.h +29 -0
- data/include/prism/integer.h +41 -0
- data/include/prism/internal/allocator.h +68 -0
- data/include/prism/internal/allocator_debug.h +88 -0
- data/include/prism/internal/arena.h +108 -0
- data/include/prism/internal/bit.h +42 -0
- data/include/prism/internal/buffer.h +94 -0
- data/include/prism/internal/char.h +145 -0
- data/include/prism/internal/comments.h +53 -0
- data/include/prism/internal/constant_pool.h +152 -0
- data/include/prism/internal/diagnostic.h +389 -0
- data/include/prism/{encoding.h → internal/encoding.h} +27 -68
- data/include/prism/internal/integer.h +68 -0
- data/include/prism/internal/isinf.h +16 -0
- data/include/prism/internal/line_offset_list.h +34 -0
- data/include/prism/{util/pm_list.h → internal/list.h} +11 -52
- data/include/prism/internal/magic_comments.h +23 -0
- data/include/prism/internal/memchr.h +15 -0
- data/include/prism/internal/node.h +38 -0
- data/include/prism/internal/options.h +232 -0
- data/include/prism/internal/parser.h +1004 -0
- data/include/prism/internal/regexp.h +26 -0
- data/include/prism/internal/serialize.h +39 -0
- data/include/prism/internal/source.h +72 -0
- data/include/prism/{static_literals.h → internal/static_literals.h} +26 -47
- data/include/prism/internal/stringy.h +35 -0
- data/include/prism/{util/pm_strncasecmp.h → internal/strncasecmp.h} +3 -17
- data/include/prism/{util/pm_strpbrk.h → internal/strpbrk.h} +7 -20
- data/include/prism/internal/tokens.h +11 -0
- data/include/prism/internal/xxh3.h +16 -0
- data/include/prism/json.h +32 -0
- data/include/prism/line_offset_list.h +61 -0
- data/include/prism/magic_comments.h +35 -0
- data/include/prism/node.h +18 -53
- data/include/prism/options.h +146 -280
- data/include/prism/parser.h +356 -867
- data/include/prism/prettyprint.h +6 -9
- data/include/prism/serialize.h +115 -0
- data/include/prism/source.h +155 -0
- data/include/prism/stream.h +28 -0
- data/include/prism/string_query.h +74 -0
- data/include/prism/stringy.h +72 -0
- data/include/prism/version.h +12 -3
- data/include/prism.h +43 -320
- data/lib/prism/compiler.rb +319 -305
- data/lib/prism/desugar_compiler.rb +105 -34
- data/lib/prism/dispatcher.rb +646 -473
- data/lib/prism/dot_visitor.rb +592 -511
- data/lib/prism/dsl.rb +391 -25
- data/lib/prism/ffi.rb +258 -90
- data/lib/prism/inspect_visitor.rb +357 -325
- data/lib/prism/lex_compat.rb +254 -212
- data/lib/prism/mutation_compiler.rb +313 -305
- data/lib/prism/node.rb +20966 -6992
- data/lib/prism/node_ext.rb +180 -187
- data/lib/prism/node_find.rb +215 -0
- data/lib/prism/parse_result/errors.rb +7 -1
- data/lib/prism/parse_result/newlines.rb +276 -8
- data/lib/prism/parse_result.rb +468 -139
- data/lib/prism/pattern.rb +65 -20
- data/lib/prism/reflection.rb +23 -12
- data/lib/prism/relocation.rb +149 -87
- data/lib/prism/serialize.rb +3460 -539
- data/lib/prism/string_query.rb +24 -1
- data/lib/prism/translation/parser/builder.rb +10 -2
- data/lib/prism/translation/parser/compiler.rb +44 -52
- data/lib/prism/translation/parser/lexer.rb +41 -92
- data/lib/prism/translation/parser.rb +1 -1
- data/lib/prism/translation/parser_current.rb +1 -1
- data/lib/prism/translation/ripper/lexer.rb +8 -10
- data/lib/prism/translation/ripper/sexp.rb +2 -10
- data/lib/prism/translation/ripper/shim.rb +2 -0
- data/lib/prism/translation/ripper.rb +967 -209
- data/lib/prism/translation/ruby_parser.rb +73 -316
- data/lib/prism/translation.rb +2 -0
- data/lib/prism/visitor.rb +632 -5
- data/lib/prism.rb +79 -9
- data/prism.gemspec +128 -62
- data/rbi/generated/prism/compiler.rbi +489 -0
- data/rbi/generated/prism/desugar_compiler.rbi +306 -0
- data/rbi/generated/prism/dispatcher.rbi +1138 -0
- data/rbi/generated/prism/dot_visitor.rbi +618 -0
- data/rbi/generated/prism/dsl.rbi +751 -0
- data/rbi/generated/prism/inspect_visitor.rbi +503 -0
- data/rbi/generated/prism/lex_compat.rbi +162 -0
- data/rbi/generated/prism/mutation_compiler.rbi +464 -0
- data/rbi/generated/prism/node.rbi +14407 -0
- data/rbi/generated/prism/node_ext.rbi +259 -0
- data/rbi/generated/prism/node_find.rbi +79 -0
- data/rbi/generated/prism/parse_result/errors.rbi +21 -0
- data/rbi/generated/prism/parse_result/newlines.rbi +208 -0
- data/rbi/generated/prism/parse_result.rbi +776 -0
- data/rbi/generated/prism/pattern.rbi +134 -0
- data/rbi/generated/prism/reflection.rbi +89 -0
- data/rbi/generated/prism/relocation.rbi +329 -0
- data/rbi/generated/prism/serialize.rbi +184 -0
- data/rbi/generated/prism/string_query.rbi +43 -0
- data/rbi/generated/prism/translation.rbi +7 -0
- data/rbi/generated/prism/visitor.rbi +650 -0
- data/rbi/generated/prism.rbi +86 -0
- data/rbi/prism/translation/parser_versions.rbi +5 -0
- data/rbi/rubyvm/node_find.rbi +14 -0
- data/sig/generated/prism/compiler.rbs +492 -0
- data/sig/generated/prism/desugar_compiler.rbs +305 -0
- data/sig/generated/prism/dispatcher.rbs +1292 -0
- data/sig/generated/prism/dot_visitor.rbs +635 -0
- data/sig/generated/prism/dsl.rbs +928 -0
- data/sig/generated/prism/inspect_visitor.rbs +509 -0
- data/sig/generated/prism/lex_compat.rbs +166 -0
- data/sig/{prism → generated/prism}/mutation_compiler.rbs +309 -4
- data/sig/generated/prism/node.rbs +20896 -0
- data/sig/generated/prism/node_ext.rbs +290 -0
- data/sig/generated/prism/node_find.rbs +90 -0
- data/sig/generated/prism/parse_result/errors.rbs +22 -0
- data/sig/generated/prism/parse_result/newlines.rbs +223 -0
- data/sig/generated/prism/parse_result.rbs +871 -0
- data/sig/generated/prism/pattern.rbs +156 -0
- data/sig/generated/prism/reflection.rbs +101 -0
- data/sig/generated/prism/relocation.rbs +428 -0
- data/sig/generated/prism/serialize.rbs +198 -0
- data/sig/generated/prism/string_query.rbs +43 -0
- data/sig/generated/prism/translation.rbs +8 -0
- data/sig/generated/prism/visitor.rbs +1111 -0
- data/sig/generated/prism.rbs +84 -0
- data/sig/manifest.yaml +2 -0
- data/src/arena.c +117 -0
- data/src/{util/pm_buffer.c → buffer.c} +53 -21
- data/src/{util/pm_char.c → char.c} +28 -57
- data/src/comments.c +454 -0
- data/src/constant_pool.c +406 -0
- data/src/diagnostic.c +97 -65
- data/src/encoding.c +8 -3
- data/src/errors_format.c +519 -0
- data/src/{util/pm_integer.c → integer.c} +33 -22
- data/src/json.c +5733 -0
- data/src/line_offset_list.c +100 -0
- data/src/list.c +24 -0
- data/src/{util/pm_memchr.c → memchr.c} +8 -6
- data/src/node.c +3504 -7674
- data/src/options.c +162 -49
- data/src/parser.c +367 -0
- data/src/prettyprint.c +421 -354
- data/src/prism.c +8402 -7161
- data/src/regexp.c +961 -45
- data/src/serialize.c +460 -424
- data/src/source.c +518 -0
- data/src/static_literals.c +111 -43
- data/src/string_query.c +180 -0
- data/src/stringy.c +91 -0
- data/src/{util/pm_strncasecmp.c → strncasecmp.c} +5 -4
- data/src/strpbrk.c +447 -0
- data/src/{token_type.c → tokens.c} +39 -18
- data/src/xxh3.c +292 -0
- metadata +128 -63
- data/ext/prism/api_pack.c +0 -276
- data/include/prism/defines.h +0 -260
- data/include/prism/pack.h +0 -163
- data/include/prism/regexp.h +0 -43
- data/include/prism/util/pm_buffer.h +0 -236
- data/include/prism/util/pm_char.h +0 -204
- data/include/prism/util/pm_constant_pool.h +0 -218
- data/include/prism/util/pm_integer.h +0 -130
- data/include/prism/util/pm_memchr.h +0 -29
- data/include/prism/util/pm_newline_list.h +0 -113
- data/include/prism/util/pm_string.h +0 -200
- data/lib/prism/pack.rb +0 -230
- data/lib/prism/parse_result/comments.rb +0 -188
- data/rbi/prism/compiler.rbi +0 -12
- data/rbi/prism/dsl.rbi +0 -524
- data/rbi/prism/inspect_visitor.rbi +0 -12
- data/rbi/prism/node.rbi +0 -8750
- data/rbi/prism/node_ext.rbi +0 -107
- data/rbi/prism/parse_result.rbi +0 -404
- data/rbi/prism/reflection.rbi +0 -58
- data/rbi/prism/string_query.rbi +0 -12
- data/rbi/prism/visitor.rbi +0 -473
- data/rbi/prism.rbi +0 -63
- data/sig/prism/compiler.rbs +0 -9
- data/sig/prism/dispatcher.rbs +0 -19
- data/sig/prism/dot_visitor.rbs +0 -6
- data/sig/prism/dsl.rbs +0 -351
- data/sig/prism/inspect_visitor.rbs +0 -22
- data/sig/prism/lex_compat.rbs +0 -10
- data/sig/prism/node.rbs +0 -4042
- data/sig/prism/node_ext.rbs +0 -149
- data/sig/prism/pack.rbs +0 -43
- data/sig/prism/parse_result/comments.rbs +0 -38
- data/sig/prism/parse_result.rbs +0 -197
- data/sig/prism/pattern.rbs +0 -13
- data/sig/prism/reflection.rbs +0 -50
- data/sig/prism/relocation.rbs +0 -185
- data/sig/prism/serialize.rbs +0 -8
- data/sig/prism/string_query.rbs +0 -11
- data/sig/prism/visitor.rbs +0 -169
- data/sig/prism.rbs +0 -272
- data/src/pack.c +0 -509
- data/src/util/pm_constant_pool.c +0 -342
- data/src/util/pm_list.c +0 -49
- data/src/util/pm_newline_list.c +0 -125
- data/src/util/pm_string.c +0 -381
- data/src/util/pm_strpbrk.c +0 -206
data/lib/prism/visitor.rb
CHANGED
|
@@ -9,7 +9,319 @@ if you are looking to modify the template
|
|
|
9
9
|
++
|
|
10
10
|
=end
|
|
11
11
|
|
|
12
|
+
#--
|
|
13
|
+
# rbs_inline: enabled
|
|
14
|
+
|
|
12
15
|
module Prism
|
|
16
|
+
# @rbs!
|
|
17
|
+
# interface _Visitor
|
|
18
|
+
#
|
|
19
|
+
# def visit_alias_global_variable_node: (AliasGlobalVariableNode) -> void
|
|
20
|
+
#
|
|
21
|
+
# def visit_alias_method_node: (AliasMethodNode) -> void
|
|
22
|
+
#
|
|
23
|
+
# def visit_alternation_pattern_node: (AlternationPatternNode) -> void
|
|
24
|
+
#
|
|
25
|
+
# def visit_and_node: (AndNode) -> void
|
|
26
|
+
#
|
|
27
|
+
# def visit_arguments_node: (ArgumentsNode) -> void
|
|
28
|
+
#
|
|
29
|
+
# def visit_array_node: (ArrayNode) -> void
|
|
30
|
+
#
|
|
31
|
+
# def visit_array_pattern_node: (ArrayPatternNode) -> void
|
|
32
|
+
#
|
|
33
|
+
# def visit_assoc_node: (AssocNode) -> void
|
|
34
|
+
#
|
|
35
|
+
# def visit_assoc_splat_node: (AssocSplatNode) -> void
|
|
36
|
+
#
|
|
37
|
+
# def visit_back_reference_read_node: (BackReferenceReadNode) -> void
|
|
38
|
+
#
|
|
39
|
+
# def visit_begin_node: (BeginNode) -> void
|
|
40
|
+
#
|
|
41
|
+
# def visit_block_argument_node: (BlockArgumentNode) -> void
|
|
42
|
+
#
|
|
43
|
+
# def visit_block_local_variable_node: (BlockLocalVariableNode) -> void
|
|
44
|
+
#
|
|
45
|
+
# def visit_block_node: (BlockNode) -> void
|
|
46
|
+
#
|
|
47
|
+
# def visit_block_parameter_node: (BlockParameterNode) -> void
|
|
48
|
+
#
|
|
49
|
+
# def visit_block_parameters_node: (BlockParametersNode) -> void
|
|
50
|
+
#
|
|
51
|
+
# def visit_break_node: (BreakNode) -> void
|
|
52
|
+
#
|
|
53
|
+
# def visit_call_and_write_node: (CallAndWriteNode) -> void
|
|
54
|
+
#
|
|
55
|
+
# def visit_call_node: (CallNode) -> void
|
|
56
|
+
#
|
|
57
|
+
# def visit_call_operator_write_node: (CallOperatorWriteNode) -> void
|
|
58
|
+
#
|
|
59
|
+
# def visit_call_or_write_node: (CallOrWriteNode) -> void
|
|
60
|
+
#
|
|
61
|
+
# def visit_call_target_node: (CallTargetNode) -> void
|
|
62
|
+
#
|
|
63
|
+
# def visit_capture_pattern_node: (CapturePatternNode) -> void
|
|
64
|
+
#
|
|
65
|
+
# def visit_case_match_node: (CaseMatchNode) -> void
|
|
66
|
+
#
|
|
67
|
+
# def visit_case_node: (CaseNode) -> void
|
|
68
|
+
#
|
|
69
|
+
# def visit_class_node: (ClassNode) -> void
|
|
70
|
+
#
|
|
71
|
+
# def visit_class_variable_and_write_node: (ClassVariableAndWriteNode) -> void
|
|
72
|
+
#
|
|
73
|
+
# def visit_class_variable_operator_write_node: (ClassVariableOperatorWriteNode) -> void
|
|
74
|
+
#
|
|
75
|
+
# def visit_class_variable_or_write_node: (ClassVariableOrWriteNode) -> void
|
|
76
|
+
#
|
|
77
|
+
# def visit_class_variable_read_node: (ClassVariableReadNode) -> void
|
|
78
|
+
#
|
|
79
|
+
# def visit_class_variable_target_node: (ClassVariableTargetNode) -> void
|
|
80
|
+
#
|
|
81
|
+
# def visit_class_variable_write_node: (ClassVariableWriteNode) -> void
|
|
82
|
+
#
|
|
83
|
+
# def visit_constant_and_write_node: (ConstantAndWriteNode) -> void
|
|
84
|
+
#
|
|
85
|
+
# def visit_constant_operator_write_node: (ConstantOperatorWriteNode) -> void
|
|
86
|
+
#
|
|
87
|
+
# def visit_constant_or_write_node: (ConstantOrWriteNode) -> void
|
|
88
|
+
#
|
|
89
|
+
# def visit_constant_path_and_write_node: (ConstantPathAndWriteNode) -> void
|
|
90
|
+
#
|
|
91
|
+
# def visit_constant_path_node: (ConstantPathNode) -> void
|
|
92
|
+
#
|
|
93
|
+
# def visit_constant_path_operator_write_node: (ConstantPathOperatorWriteNode) -> void
|
|
94
|
+
#
|
|
95
|
+
# def visit_constant_path_or_write_node: (ConstantPathOrWriteNode) -> void
|
|
96
|
+
#
|
|
97
|
+
# def visit_constant_path_target_node: (ConstantPathTargetNode) -> void
|
|
98
|
+
#
|
|
99
|
+
# def visit_constant_path_write_node: (ConstantPathWriteNode) -> void
|
|
100
|
+
#
|
|
101
|
+
# def visit_constant_read_node: (ConstantReadNode) -> void
|
|
102
|
+
#
|
|
103
|
+
# def visit_constant_target_node: (ConstantTargetNode) -> void
|
|
104
|
+
#
|
|
105
|
+
# def visit_constant_write_node: (ConstantWriteNode) -> void
|
|
106
|
+
#
|
|
107
|
+
# def visit_def_node: (DefNode) -> void
|
|
108
|
+
#
|
|
109
|
+
# def visit_defined_node: (DefinedNode) -> void
|
|
110
|
+
#
|
|
111
|
+
# def visit_else_node: (ElseNode) -> void
|
|
112
|
+
#
|
|
113
|
+
# def visit_embedded_statements_node: (EmbeddedStatementsNode) -> void
|
|
114
|
+
#
|
|
115
|
+
# def visit_embedded_variable_node: (EmbeddedVariableNode) -> void
|
|
116
|
+
#
|
|
117
|
+
# def visit_ensure_node: (EnsureNode) -> void
|
|
118
|
+
#
|
|
119
|
+
# def visit_error_recovery_node: (ErrorRecoveryNode) -> void
|
|
120
|
+
#
|
|
121
|
+
# def visit_false_node: (FalseNode) -> void
|
|
122
|
+
#
|
|
123
|
+
# def visit_find_pattern_node: (FindPatternNode) -> void
|
|
124
|
+
#
|
|
125
|
+
# def visit_flip_flop_node: (FlipFlopNode) -> void
|
|
126
|
+
#
|
|
127
|
+
# def visit_float_node: (FloatNode) -> void
|
|
128
|
+
#
|
|
129
|
+
# def visit_for_node: (ForNode) -> void
|
|
130
|
+
#
|
|
131
|
+
# def visit_forwarding_arguments_node: (ForwardingArgumentsNode) -> void
|
|
132
|
+
#
|
|
133
|
+
# def visit_forwarding_parameter_node: (ForwardingParameterNode) -> void
|
|
134
|
+
#
|
|
135
|
+
# def visit_forwarding_super_node: (ForwardingSuperNode) -> void
|
|
136
|
+
#
|
|
137
|
+
# def visit_global_variable_and_write_node: (GlobalVariableAndWriteNode) -> void
|
|
138
|
+
#
|
|
139
|
+
# def visit_global_variable_operator_write_node: (GlobalVariableOperatorWriteNode) -> void
|
|
140
|
+
#
|
|
141
|
+
# def visit_global_variable_or_write_node: (GlobalVariableOrWriteNode) -> void
|
|
142
|
+
#
|
|
143
|
+
# def visit_global_variable_read_node: (GlobalVariableReadNode) -> void
|
|
144
|
+
#
|
|
145
|
+
# def visit_global_variable_target_node: (GlobalVariableTargetNode) -> void
|
|
146
|
+
#
|
|
147
|
+
# def visit_global_variable_write_node: (GlobalVariableWriteNode) -> void
|
|
148
|
+
#
|
|
149
|
+
# def visit_hash_node: (HashNode) -> void
|
|
150
|
+
#
|
|
151
|
+
# def visit_hash_pattern_node: (HashPatternNode) -> void
|
|
152
|
+
#
|
|
153
|
+
# def visit_if_node: (IfNode) -> void
|
|
154
|
+
#
|
|
155
|
+
# def visit_imaginary_node: (ImaginaryNode) -> void
|
|
156
|
+
#
|
|
157
|
+
# def visit_implicit_node: (ImplicitNode) -> void
|
|
158
|
+
#
|
|
159
|
+
# def visit_implicit_rest_node: (ImplicitRestNode) -> void
|
|
160
|
+
#
|
|
161
|
+
# def visit_in_node: (InNode) -> void
|
|
162
|
+
#
|
|
163
|
+
# def visit_index_and_write_node: (IndexAndWriteNode) -> void
|
|
164
|
+
#
|
|
165
|
+
# def visit_index_operator_write_node: (IndexOperatorWriteNode) -> void
|
|
166
|
+
#
|
|
167
|
+
# def visit_index_or_write_node: (IndexOrWriteNode) -> void
|
|
168
|
+
#
|
|
169
|
+
# def visit_index_target_node: (IndexTargetNode) -> void
|
|
170
|
+
#
|
|
171
|
+
# def visit_instance_variable_and_write_node: (InstanceVariableAndWriteNode) -> void
|
|
172
|
+
#
|
|
173
|
+
# def visit_instance_variable_operator_write_node: (InstanceVariableOperatorWriteNode) -> void
|
|
174
|
+
#
|
|
175
|
+
# def visit_instance_variable_or_write_node: (InstanceVariableOrWriteNode) -> void
|
|
176
|
+
#
|
|
177
|
+
# def visit_instance_variable_read_node: (InstanceVariableReadNode) -> void
|
|
178
|
+
#
|
|
179
|
+
# def visit_instance_variable_target_node: (InstanceVariableTargetNode) -> void
|
|
180
|
+
#
|
|
181
|
+
# def visit_instance_variable_write_node: (InstanceVariableWriteNode) -> void
|
|
182
|
+
#
|
|
183
|
+
# def visit_integer_node: (IntegerNode) -> void
|
|
184
|
+
#
|
|
185
|
+
# def visit_interpolated_match_last_line_node: (InterpolatedMatchLastLineNode) -> void
|
|
186
|
+
#
|
|
187
|
+
# def visit_interpolated_regular_expression_node: (InterpolatedRegularExpressionNode) -> void
|
|
188
|
+
#
|
|
189
|
+
# def visit_interpolated_string_node: (InterpolatedStringNode) -> void
|
|
190
|
+
#
|
|
191
|
+
# def visit_interpolated_symbol_node: (InterpolatedSymbolNode) -> void
|
|
192
|
+
#
|
|
193
|
+
# def visit_interpolated_x_string_node: (InterpolatedXStringNode) -> void
|
|
194
|
+
#
|
|
195
|
+
# def visit_it_local_variable_read_node: (ItLocalVariableReadNode) -> void
|
|
196
|
+
#
|
|
197
|
+
# def visit_it_parameters_node: (ItParametersNode) -> void
|
|
198
|
+
#
|
|
199
|
+
# def visit_keyword_hash_node: (KeywordHashNode) -> void
|
|
200
|
+
#
|
|
201
|
+
# def visit_keyword_rest_parameter_node: (KeywordRestParameterNode) -> void
|
|
202
|
+
#
|
|
203
|
+
# def visit_lambda_node: (LambdaNode) -> void
|
|
204
|
+
#
|
|
205
|
+
# def visit_local_variable_and_write_node: (LocalVariableAndWriteNode) -> void
|
|
206
|
+
#
|
|
207
|
+
# def visit_local_variable_operator_write_node: (LocalVariableOperatorWriteNode) -> void
|
|
208
|
+
#
|
|
209
|
+
# def visit_local_variable_or_write_node: (LocalVariableOrWriteNode) -> void
|
|
210
|
+
#
|
|
211
|
+
# def visit_local_variable_read_node: (LocalVariableReadNode) -> void
|
|
212
|
+
#
|
|
213
|
+
# def visit_local_variable_target_node: (LocalVariableTargetNode) -> void
|
|
214
|
+
#
|
|
215
|
+
# def visit_local_variable_write_node: (LocalVariableWriteNode) -> void
|
|
216
|
+
#
|
|
217
|
+
# def visit_match_last_line_node: (MatchLastLineNode) -> void
|
|
218
|
+
#
|
|
219
|
+
# def visit_match_predicate_node: (MatchPredicateNode) -> void
|
|
220
|
+
#
|
|
221
|
+
# def visit_match_required_node: (MatchRequiredNode) -> void
|
|
222
|
+
#
|
|
223
|
+
# def visit_match_write_node: (MatchWriteNode) -> void
|
|
224
|
+
#
|
|
225
|
+
# def visit_module_node: (ModuleNode) -> void
|
|
226
|
+
#
|
|
227
|
+
# def visit_multi_target_node: (MultiTargetNode) -> void
|
|
228
|
+
#
|
|
229
|
+
# def visit_multi_write_node: (MultiWriteNode) -> void
|
|
230
|
+
#
|
|
231
|
+
# def visit_next_node: (NextNode) -> void
|
|
232
|
+
#
|
|
233
|
+
# def visit_nil_node: (NilNode) -> void
|
|
234
|
+
#
|
|
235
|
+
# def visit_no_block_parameter_node: (NoBlockParameterNode) -> void
|
|
236
|
+
#
|
|
237
|
+
# def visit_no_keywords_parameter_node: (NoKeywordsParameterNode) -> void
|
|
238
|
+
#
|
|
239
|
+
# def visit_numbered_parameters_node: (NumberedParametersNode) -> void
|
|
240
|
+
#
|
|
241
|
+
# def visit_numbered_reference_read_node: (NumberedReferenceReadNode) -> void
|
|
242
|
+
#
|
|
243
|
+
# def visit_optional_keyword_parameter_node: (OptionalKeywordParameterNode) -> void
|
|
244
|
+
#
|
|
245
|
+
# def visit_optional_parameter_node: (OptionalParameterNode) -> void
|
|
246
|
+
#
|
|
247
|
+
# def visit_or_node: (OrNode) -> void
|
|
248
|
+
#
|
|
249
|
+
# def visit_parameters_node: (ParametersNode) -> void
|
|
250
|
+
#
|
|
251
|
+
# def visit_parentheses_node: (ParenthesesNode) -> void
|
|
252
|
+
#
|
|
253
|
+
# def visit_pinned_expression_node: (PinnedExpressionNode) -> void
|
|
254
|
+
#
|
|
255
|
+
# def visit_pinned_variable_node: (PinnedVariableNode) -> void
|
|
256
|
+
#
|
|
257
|
+
# def visit_post_execution_node: (PostExecutionNode) -> void
|
|
258
|
+
#
|
|
259
|
+
# def visit_pre_execution_node: (PreExecutionNode) -> void
|
|
260
|
+
#
|
|
261
|
+
# def visit_program_node: (ProgramNode) -> void
|
|
262
|
+
#
|
|
263
|
+
# def visit_range_node: (RangeNode) -> void
|
|
264
|
+
#
|
|
265
|
+
# def visit_rational_node: (RationalNode) -> void
|
|
266
|
+
#
|
|
267
|
+
# def visit_redo_node: (RedoNode) -> void
|
|
268
|
+
#
|
|
269
|
+
# def visit_regular_expression_node: (RegularExpressionNode) -> void
|
|
270
|
+
#
|
|
271
|
+
# def visit_required_keyword_parameter_node: (RequiredKeywordParameterNode) -> void
|
|
272
|
+
#
|
|
273
|
+
# def visit_required_parameter_node: (RequiredParameterNode) -> void
|
|
274
|
+
#
|
|
275
|
+
# def visit_rescue_modifier_node: (RescueModifierNode) -> void
|
|
276
|
+
#
|
|
277
|
+
# def visit_rescue_node: (RescueNode) -> void
|
|
278
|
+
#
|
|
279
|
+
# def visit_rest_parameter_node: (RestParameterNode) -> void
|
|
280
|
+
#
|
|
281
|
+
# def visit_retry_node: (RetryNode) -> void
|
|
282
|
+
#
|
|
283
|
+
# def visit_return_node: (ReturnNode) -> void
|
|
284
|
+
#
|
|
285
|
+
# def visit_self_node: (SelfNode) -> void
|
|
286
|
+
#
|
|
287
|
+
# def visit_shareable_constant_node: (ShareableConstantNode) -> void
|
|
288
|
+
#
|
|
289
|
+
# def visit_singleton_class_node: (SingletonClassNode) -> void
|
|
290
|
+
#
|
|
291
|
+
# def visit_source_encoding_node: (SourceEncodingNode) -> void
|
|
292
|
+
#
|
|
293
|
+
# def visit_source_file_node: (SourceFileNode) -> void
|
|
294
|
+
#
|
|
295
|
+
# def visit_source_line_node: (SourceLineNode) -> void
|
|
296
|
+
#
|
|
297
|
+
# def visit_splat_node: (SplatNode) -> void
|
|
298
|
+
#
|
|
299
|
+
# def visit_statements_node: (StatementsNode) -> void
|
|
300
|
+
#
|
|
301
|
+
# def visit_string_node: (StringNode) -> void
|
|
302
|
+
#
|
|
303
|
+
# def visit_super_node: (SuperNode) -> void
|
|
304
|
+
#
|
|
305
|
+
# def visit_symbol_node: (SymbolNode) -> void
|
|
306
|
+
#
|
|
307
|
+
# def visit_true_node: (TrueNode) -> void
|
|
308
|
+
#
|
|
309
|
+
# def visit_undef_node: (UndefNode) -> void
|
|
310
|
+
#
|
|
311
|
+
# def visit_unless_node: (UnlessNode) -> void
|
|
312
|
+
#
|
|
313
|
+
# def visit_until_node: (UntilNode) -> void
|
|
314
|
+
#
|
|
315
|
+
# def visit_when_node: (WhenNode) -> void
|
|
316
|
+
#
|
|
317
|
+
# def visit_while_node: (WhileNode) -> void
|
|
318
|
+
#
|
|
319
|
+
# def visit_x_string_node: (XStringNode) -> void
|
|
320
|
+
#
|
|
321
|
+
# def visit_yield_node: (YieldNode) -> void
|
|
322
|
+
#
|
|
323
|
+
# end
|
|
324
|
+
|
|
13
325
|
# A class that knows how to walk down the tree. None of the individual visit
|
|
14
326
|
# methods are implemented on this visitor, so it forces the consumer to
|
|
15
327
|
# implement each one that they need. For a default implementation that
|
|
@@ -17,18 +329,24 @@ module Prism
|
|
|
17
329
|
class BasicVisitor
|
|
18
330
|
# Calls `accept` on the given node if it is not `nil`, which in turn should
|
|
19
331
|
# call back into this visitor by calling the appropriate `visit_*` method.
|
|
332
|
+
#
|
|
333
|
+
#: (node? node) -> void
|
|
20
334
|
def visit(node)
|
|
21
335
|
# @type self: _Visitor
|
|
22
336
|
node&.accept(self)
|
|
23
337
|
end
|
|
24
338
|
|
|
25
339
|
# Visits each node in `nodes` by calling `accept` on each one.
|
|
340
|
+
#
|
|
341
|
+
#: (Array[node?] nodes) -> void
|
|
26
342
|
def visit_all(nodes)
|
|
27
343
|
# @type self: _Visitor
|
|
28
344
|
nodes.each { |node| node&.accept(self) }
|
|
29
345
|
end
|
|
30
346
|
|
|
31
347
|
# Visits the child nodes of `node` by calling `accept` on each one.
|
|
348
|
+
#
|
|
349
|
+
#: (node node) -> void
|
|
32
350
|
def visit_child_nodes(node)
|
|
33
351
|
# @type self: _Visitor
|
|
34
352
|
node.each_child_node { |node| node.accept(self) }
|
|
@@ -56,756 +374,1065 @@ module Prism
|
|
|
56
374
|
#
|
|
57
375
|
class Visitor < BasicVisitor
|
|
58
376
|
# Visit a AliasGlobalVariableNode node
|
|
377
|
+
#
|
|
378
|
+
#: (AliasGlobalVariableNode node) -> void
|
|
59
379
|
def visit_alias_global_variable_node(node)
|
|
60
380
|
node.each_child_node { |node| node.accept(self) }
|
|
61
381
|
end
|
|
62
382
|
|
|
63
383
|
# Visit a AliasMethodNode node
|
|
384
|
+
#
|
|
385
|
+
#: (AliasMethodNode node) -> void
|
|
64
386
|
def visit_alias_method_node(node)
|
|
65
387
|
node.each_child_node { |node| node.accept(self) }
|
|
66
388
|
end
|
|
67
389
|
|
|
68
390
|
# Visit a AlternationPatternNode node
|
|
391
|
+
#
|
|
392
|
+
#: (AlternationPatternNode node) -> void
|
|
69
393
|
def visit_alternation_pattern_node(node)
|
|
70
394
|
node.each_child_node { |node| node.accept(self) }
|
|
71
395
|
end
|
|
72
396
|
|
|
73
397
|
# Visit a AndNode node
|
|
398
|
+
#
|
|
399
|
+
#: (AndNode node) -> void
|
|
74
400
|
def visit_and_node(node)
|
|
75
401
|
node.each_child_node { |node| node.accept(self) }
|
|
76
402
|
end
|
|
77
403
|
|
|
78
404
|
# Visit a ArgumentsNode node
|
|
405
|
+
#
|
|
406
|
+
#: (ArgumentsNode node) -> void
|
|
79
407
|
def visit_arguments_node(node)
|
|
80
408
|
node.each_child_node { |node| node.accept(self) }
|
|
81
409
|
end
|
|
82
410
|
|
|
83
411
|
# Visit a ArrayNode node
|
|
412
|
+
#
|
|
413
|
+
#: (ArrayNode node) -> void
|
|
84
414
|
def visit_array_node(node)
|
|
85
415
|
node.each_child_node { |node| node.accept(self) }
|
|
86
416
|
end
|
|
87
417
|
|
|
88
418
|
# Visit a ArrayPatternNode node
|
|
419
|
+
#
|
|
420
|
+
#: (ArrayPatternNode node) -> void
|
|
89
421
|
def visit_array_pattern_node(node)
|
|
90
422
|
node.each_child_node { |node| node.accept(self) }
|
|
91
423
|
end
|
|
92
424
|
|
|
93
425
|
# Visit a AssocNode node
|
|
426
|
+
#
|
|
427
|
+
#: (AssocNode node) -> void
|
|
94
428
|
def visit_assoc_node(node)
|
|
95
429
|
node.each_child_node { |node| node.accept(self) }
|
|
96
430
|
end
|
|
97
431
|
|
|
98
432
|
# Visit a AssocSplatNode node
|
|
433
|
+
#
|
|
434
|
+
#: (AssocSplatNode node) -> void
|
|
99
435
|
def visit_assoc_splat_node(node)
|
|
100
436
|
node.each_child_node { |node| node.accept(self) }
|
|
101
437
|
end
|
|
102
438
|
|
|
103
439
|
# Visit a BackReferenceReadNode node
|
|
440
|
+
#
|
|
441
|
+
#: (BackReferenceReadNode node) -> void
|
|
104
442
|
def visit_back_reference_read_node(node)
|
|
105
443
|
node.each_child_node { |node| node.accept(self) }
|
|
106
444
|
end
|
|
107
445
|
|
|
108
446
|
# Visit a BeginNode node
|
|
447
|
+
#
|
|
448
|
+
#: (BeginNode node) -> void
|
|
109
449
|
def visit_begin_node(node)
|
|
110
450
|
node.each_child_node { |node| node.accept(self) }
|
|
111
451
|
end
|
|
112
452
|
|
|
113
453
|
# Visit a BlockArgumentNode node
|
|
454
|
+
#
|
|
455
|
+
#: (BlockArgumentNode node) -> void
|
|
114
456
|
def visit_block_argument_node(node)
|
|
115
457
|
node.each_child_node { |node| node.accept(self) }
|
|
116
458
|
end
|
|
117
459
|
|
|
118
460
|
# Visit a BlockLocalVariableNode node
|
|
461
|
+
#
|
|
462
|
+
#: (BlockLocalVariableNode node) -> void
|
|
119
463
|
def visit_block_local_variable_node(node)
|
|
120
464
|
node.each_child_node { |node| node.accept(self) }
|
|
121
465
|
end
|
|
122
466
|
|
|
123
467
|
# Visit a BlockNode node
|
|
468
|
+
#
|
|
469
|
+
#: (BlockNode node) -> void
|
|
124
470
|
def visit_block_node(node)
|
|
125
471
|
node.each_child_node { |node| node.accept(self) }
|
|
126
472
|
end
|
|
127
473
|
|
|
128
474
|
# Visit a BlockParameterNode node
|
|
475
|
+
#
|
|
476
|
+
#: (BlockParameterNode node) -> void
|
|
129
477
|
def visit_block_parameter_node(node)
|
|
130
478
|
node.each_child_node { |node| node.accept(self) }
|
|
131
479
|
end
|
|
132
480
|
|
|
133
481
|
# Visit a BlockParametersNode node
|
|
482
|
+
#
|
|
483
|
+
#: (BlockParametersNode node) -> void
|
|
134
484
|
def visit_block_parameters_node(node)
|
|
135
485
|
node.each_child_node { |node| node.accept(self) }
|
|
136
486
|
end
|
|
137
487
|
|
|
138
488
|
# Visit a BreakNode node
|
|
489
|
+
#
|
|
490
|
+
#: (BreakNode node) -> void
|
|
139
491
|
def visit_break_node(node)
|
|
140
492
|
node.each_child_node { |node| node.accept(self) }
|
|
141
493
|
end
|
|
142
494
|
|
|
143
495
|
# Visit a CallAndWriteNode node
|
|
496
|
+
#
|
|
497
|
+
#: (CallAndWriteNode node) -> void
|
|
144
498
|
def visit_call_and_write_node(node)
|
|
145
499
|
node.each_child_node { |node| node.accept(self) }
|
|
146
500
|
end
|
|
147
501
|
|
|
148
502
|
# Visit a CallNode node
|
|
503
|
+
#
|
|
504
|
+
#: (CallNode node) -> void
|
|
149
505
|
def visit_call_node(node)
|
|
150
506
|
node.each_child_node { |node| node.accept(self) }
|
|
151
507
|
end
|
|
152
508
|
|
|
153
509
|
# Visit a CallOperatorWriteNode node
|
|
510
|
+
#
|
|
511
|
+
#: (CallOperatorWriteNode node) -> void
|
|
154
512
|
def visit_call_operator_write_node(node)
|
|
155
513
|
node.each_child_node { |node| node.accept(self) }
|
|
156
514
|
end
|
|
157
515
|
|
|
158
516
|
# Visit a CallOrWriteNode node
|
|
517
|
+
#
|
|
518
|
+
#: (CallOrWriteNode node) -> void
|
|
159
519
|
def visit_call_or_write_node(node)
|
|
160
520
|
node.each_child_node { |node| node.accept(self) }
|
|
161
521
|
end
|
|
162
522
|
|
|
163
523
|
# Visit a CallTargetNode node
|
|
524
|
+
#
|
|
525
|
+
#: (CallTargetNode node) -> void
|
|
164
526
|
def visit_call_target_node(node)
|
|
165
527
|
node.each_child_node { |node| node.accept(self) }
|
|
166
528
|
end
|
|
167
529
|
|
|
168
530
|
# Visit a CapturePatternNode node
|
|
531
|
+
#
|
|
532
|
+
#: (CapturePatternNode node) -> void
|
|
169
533
|
def visit_capture_pattern_node(node)
|
|
170
534
|
node.each_child_node { |node| node.accept(self) }
|
|
171
535
|
end
|
|
172
536
|
|
|
173
537
|
# Visit a CaseMatchNode node
|
|
538
|
+
#
|
|
539
|
+
#: (CaseMatchNode node) -> void
|
|
174
540
|
def visit_case_match_node(node)
|
|
175
541
|
node.each_child_node { |node| node.accept(self) }
|
|
176
542
|
end
|
|
177
543
|
|
|
178
544
|
# Visit a CaseNode node
|
|
545
|
+
#
|
|
546
|
+
#: (CaseNode node) -> void
|
|
179
547
|
def visit_case_node(node)
|
|
180
548
|
node.each_child_node { |node| node.accept(self) }
|
|
181
549
|
end
|
|
182
550
|
|
|
183
551
|
# Visit a ClassNode node
|
|
552
|
+
#
|
|
553
|
+
#: (ClassNode node) -> void
|
|
184
554
|
def visit_class_node(node)
|
|
185
555
|
node.each_child_node { |node| node.accept(self) }
|
|
186
556
|
end
|
|
187
557
|
|
|
188
558
|
# Visit a ClassVariableAndWriteNode node
|
|
559
|
+
#
|
|
560
|
+
#: (ClassVariableAndWriteNode node) -> void
|
|
189
561
|
def visit_class_variable_and_write_node(node)
|
|
190
562
|
node.each_child_node { |node| node.accept(self) }
|
|
191
563
|
end
|
|
192
564
|
|
|
193
565
|
# Visit a ClassVariableOperatorWriteNode node
|
|
566
|
+
#
|
|
567
|
+
#: (ClassVariableOperatorWriteNode node) -> void
|
|
194
568
|
def visit_class_variable_operator_write_node(node)
|
|
195
569
|
node.each_child_node { |node| node.accept(self) }
|
|
196
570
|
end
|
|
197
571
|
|
|
198
572
|
# Visit a ClassVariableOrWriteNode node
|
|
573
|
+
#
|
|
574
|
+
#: (ClassVariableOrWriteNode node) -> void
|
|
199
575
|
def visit_class_variable_or_write_node(node)
|
|
200
576
|
node.each_child_node { |node| node.accept(self) }
|
|
201
577
|
end
|
|
202
578
|
|
|
203
579
|
# Visit a ClassVariableReadNode node
|
|
580
|
+
#
|
|
581
|
+
#: (ClassVariableReadNode node) -> void
|
|
204
582
|
def visit_class_variable_read_node(node)
|
|
205
583
|
node.each_child_node { |node| node.accept(self) }
|
|
206
584
|
end
|
|
207
585
|
|
|
208
586
|
# Visit a ClassVariableTargetNode node
|
|
587
|
+
#
|
|
588
|
+
#: (ClassVariableTargetNode node) -> void
|
|
209
589
|
def visit_class_variable_target_node(node)
|
|
210
590
|
node.each_child_node { |node| node.accept(self) }
|
|
211
591
|
end
|
|
212
592
|
|
|
213
593
|
# Visit a ClassVariableWriteNode node
|
|
594
|
+
#
|
|
595
|
+
#: (ClassVariableWriteNode node) -> void
|
|
214
596
|
def visit_class_variable_write_node(node)
|
|
215
597
|
node.each_child_node { |node| node.accept(self) }
|
|
216
598
|
end
|
|
217
599
|
|
|
218
600
|
# Visit a ConstantAndWriteNode node
|
|
601
|
+
#
|
|
602
|
+
#: (ConstantAndWriteNode node) -> void
|
|
219
603
|
def visit_constant_and_write_node(node)
|
|
220
604
|
node.each_child_node { |node| node.accept(self) }
|
|
221
605
|
end
|
|
222
606
|
|
|
223
607
|
# Visit a ConstantOperatorWriteNode node
|
|
608
|
+
#
|
|
609
|
+
#: (ConstantOperatorWriteNode node) -> void
|
|
224
610
|
def visit_constant_operator_write_node(node)
|
|
225
611
|
node.each_child_node { |node| node.accept(self) }
|
|
226
612
|
end
|
|
227
613
|
|
|
228
614
|
# Visit a ConstantOrWriteNode node
|
|
615
|
+
#
|
|
616
|
+
#: (ConstantOrWriteNode node) -> void
|
|
229
617
|
def visit_constant_or_write_node(node)
|
|
230
618
|
node.each_child_node { |node| node.accept(self) }
|
|
231
619
|
end
|
|
232
620
|
|
|
233
621
|
# Visit a ConstantPathAndWriteNode node
|
|
622
|
+
#
|
|
623
|
+
#: (ConstantPathAndWriteNode node) -> void
|
|
234
624
|
def visit_constant_path_and_write_node(node)
|
|
235
625
|
node.each_child_node { |node| node.accept(self) }
|
|
236
626
|
end
|
|
237
627
|
|
|
238
628
|
# Visit a ConstantPathNode node
|
|
629
|
+
#
|
|
630
|
+
#: (ConstantPathNode node) -> void
|
|
239
631
|
def visit_constant_path_node(node)
|
|
240
632
|
node.each_child_node { |node| node.accept(self) }
|
|
241
633
|
end
|
|
242
634
|
|
|
243
635
|
# Visit a ConstantPathOperatorWriteNode node
|
|
636
|
+
#
|
|
637
|
+
#: (ConstantPathOperatorWriteNode node) -> void
|
|
244
638
|
def visit_constant_path_operator_write_node(node)
|
|
245
639
|
node.each_child_node { |node| node.accept(self) }
|
|
246
640
|
end
|
|
247
641
|
|
|
248
642
|
# Visit a ConstantPathOrWriteNode node
|
|
643
|
+
#
|
|
644
|
+
#: (ConstantPathOrWriteNode node) -> void
|
|
249
645
|
def visit_constant_path_or_write_node(node)
|
|
250
646
|
node.each_child_node { |node| node.accept(self) }
|
|
251
647
|
end
|
|
252
648
|
|
|
253
649
|
# Visit a ConstantPathTargetNode node
|
|
650
|
+
#
|
|
651
|
+
#: (ConstantPathTargetNode node) -> void
|
|
254
652
|
def visit_constant_path_target_node(node)
|
|
255
653
|
node.each_child_node { |node| node.accept(self) }
|
|
256
654
|
end
|
|
257
655
|
|
|
258
656
|
# Visit a ConstantPathWriteNode node
|
|
657
|
+
#
|
|
658
|
+
#: (ConstantPathWriteNode node) -> void
|
|
259
659
|
def visit_constant_path_write_node(node)
|
|
260
660
|
node.each_child_node { |node| node.accept(self) }
|
|
261
661
|
end
|
|
262
662
|
|
|
263
663
|
# Visit a ConstantReadNode node
|
|
664
|
+
#
|
|
665
|
+
#: (ConstantReadNode node) -> void
|
|
264
666
|
def visit_constant_read_node(node)
|
|
265
667
|
node.each_child_node { |node| node.accept(self) }
|
|
266
668
|
end
|
|
267
669
|
|
|
268
670
|
# Visit a ConstantTargetNode node
|
|
671
|
+
#
|
|
672
|
+
#: (ConstantTargetNode node) -> void
|
|
269
673
|
def visit_constant_target_node(node)
|
|
270
674
|
node.each_child_node { |node| node.accept(self) }
|
|
271
675
|
end
|
|
272
676
|
|
|
273
677
|
# Visit a ConstantWriteNode node
|
|
678
|
+
#
|
|
679
|
+
#: (ConstantWriteNode node) -> void
|
|
274
680
|
def visit_constant_write_node(node)
|
|
275
681
|
node.each_child_node { |node| node.accept(self) }
|
|
276
682
|
end
|
|
277
683
|
|
|
278
684
|
# Visit a DefNode node
|
|
685
|
+
#
|
|
686
|
+
#: (DefNode node) -> void
|
|
279
687
|
def visit_def_node(node)
|
|
280
688
|
node.each_child_node { |node| node.accept(self) }
|
|
281
689
|
end
|
|
282
690
|
|
|
283
691
|
# Visit a DefinedNode node
|
|
692
|
+
#
|
|
693
|
+
#: (DefinedNode node) -> void
|
|
284
694
|
def visit_defined_node(node)
|
|
285
695
|
node.each_child_node { |node| node.accept(self) }
|
|
286
696
|
end
|
|
287
697
|
|
|
288
698
|
# Visit a ElseNode node
|
|
699
|
+
#
|
|
700
|
+
#: (ElseNode node) -> void
|
|
289
701
|
def visit_else_node(node)
|
|
290
702
|
node.each_child_node { |node| node.accept(self) }
|
|
291
703
|
end
|
|
292
704
|
|
|
293
705
|
# Visit a EmbeddedStatementsNode node
|
|
706
|
+
#
|
|
707
|
+
#: (EmbeddedStatementsNode node) -> void
|
|
294
708
|
def visit_embedded_statements_node(node)
|
|
295
709
|
node.each_child_node { |node| node.accept(self) }
|
|
296
710
|
end
|
|
297
711
|
|
|
298
712
|
# Visit a EmbeddedVariableNode node
|
|
713
|
+
#
|
|
714
|
+
#: (EmbeddedVariableNode node) -> void
|
|
299
715
|
def visit_embedded_variable_node(node)
|
|
300
716
|
node.each_child_node { |node| node.accept(self) }
|
|
301
717
|
end
|
|
302
718
|
|
|
303
719
|
# Visit a EnsureNode node
|
|
720
|
+
#
|
|
721
|
+
#: (EnsureNode node) -> void
|
|
304
722
|
def visit_ensure_node(node)
|
|
305
723
|
node.each_child_node { |node| node.accept(self) }
|
|
306
724
|
end
|
|
307
725
|
|
|
726
|
+
# Visit a ErrorRecoveryNode node
|
|
727
|
+
#
|
|
728
|
+
#: (ErrorRecoveryNode node) -> void
|
|
729
|
+
def visit_error_recovery_node(node)
|
|
730
|
+
node.each_child_node { |node| node.accept(self) }
|
|
731
|
+
end
|
|
732
|
+
|
|
308
733
|
# Visit a FalseNode node
|
|
734
|
+
#
|
|
735
|
+
#: (FalseNode node) -> void
|
|
309
736
|
def visit_false_node(node)
|
|
310
737
|
node.each_child_node { |node| node.accept(self) }
|
|
311
738
|
end
|
|
312
739
|
|
|
313
740
|
# Visit a FindPatternNode node
|
|
741
|
+
#
|
|
742
|
+
#: (FindPatternNode node) -> void
|
|
314
743
|
def visit_find_pattern_node(node)
|
|
315
744
|
node.each_child_node { |node| node.accept(self) }
|
|
316
745
|
end
|
|
317
746
|
|
|
318
747
|
# Visit a FlipFlopNode node
|
|
748
|
+
#
|
|
749
|
+
#: (FlipFlopNode node) -> void
|
|
319
750
|
def visit_flip_flop_node(node)
|
|
320
751
|
node.each_child_node { |node| node.accept(self) }
|
|
321
752
|
end
|
|
322
753
|
|
|
323
754
|
# Visit a FloatNode node
|
|
755
|
+
#
|
|
756
|
+
#: (FloatNode node) -> void
|
|
324
757
|
def visit_float_node(node)
|
|
325
758
|
node.each_child_node { |node| node.accept(self) }
|
|
326
759
|
end
|
|
327
760
|
|
|
328
761
|
# Visit a ForNode node
|
|
762
|
+
#
|
|
763
|
+
#: (ForNode node) -> void
|
|
329
764
|
def visit_for_node(node)
|
|
330
765
|
node.each_child_node { |node| node.accept(self) }
|
|
331
766
|
end
|
|
332
767
|
|
|
333
768
|
# Visit a ForwardingArgumentsNode node
|
|
769
|
+
#
|
|
770
|
+
#: (ForwardingArgumentsNode node) -> void
|
|
334
771
|
def visit_forwarding_arguments_node(node)
|
|
335
772
|
node.each_child_node { |node| node.accept(self) }
|
|
336
773
|
end
|
|
337
774
|
|
|
338
775
|
# Visit a ForwardingParameterNode node
|
|
776
|
+
#
|
|
777
|
+
#: (ForwardingParameterNode node) -> void
|
|
339
778
|
def visit_forwarding_parameter_node(node)
|
|
340
779
|
node.each_child_node { |node| node.accept(self) }
|
|
341
780
|
end
|
|
342
781
|
|
|
343
782
|
# Visit a ForwardingSuperNode node
|
|
783
|
+
#
|
|
784
|
+
#: (ForwardingSuperNode node) -> void
|
|
344
785
|
def visit_forwarding_super_node(node)
|
|
345
786
|
node.each_child_node { |node| node.accept(self) }
|
|
346
787
|
end
|
|
347
788
|
|
|
348
789
|
# Visit a GlobalVariableAndWriteNode node
|
|
790
|
+
#
|
|
791
|
+
#: (GlobalVariableAndWriteNode node) -> void
|
|
349
792
|
def visit_global_variable_and_write_node(node)
|
|
350
793
|
node.each_child_node { |node| node.accept(self) }
|
|
351
794
|
end
|
|
352
795
|
|
|
353
796
|
# Visit a GlobalVariableOperatorWriteNode node
|
|
797
|
+
#
|
|
798
|
+
#: (GlobalVariableOperatorWriteNode node) -> void
|
|
354
799
|
def visit_global_variable_operator_write_node(node)
|
|
355
800
|
node.each_child_node { |node| node.accept(self) }
|
|
356
801
|
end
|
|
357
802
|
|
|
358
803
|
# Visit a GlobalVariableOrWriteNode node
|
|
804
|
+
#
|
|
805
|
+
#: (GlobalVariableOrWriteNode node) -> void
|
|
359
806
|
def visit_global_variable_or_write_node(node)
|
|
360
807
|
node.each_child_node { |node| node.accept(self) }
|
|
361
808
|
end
|
|
362
809
|
|
|
363
810
|
# Visit a GlobalVariableReadNode node
|
|
811
|
+
#
|
|
812
|
+
#: (GlobalVariableReadNode node) -> void
|
|
364
813
|
def visit_global_variable_read_node(node)
|
|
365
814
|
node.each_child_node { |node| node.accept(self) }
|
|
366
815
|
end
|
|
367
816
|
|
|
368
817
|
# Visit a GlobalVariableTargetNode node
|
|
818
|
+
#
|
|
819
|
+
#: (GlobalVariableTargetNode node) -> void
|
|
369
820
|
def visit_global_variable_target_node(node)
|
|
370
821
|
node.each_child_node { |node| node.accept(self) }
|
|
371
822
|
end
|
|
372
823
|
|
|
373
824
|
# Visit a GlobalVariableWriteNode node
|
|
825
|
+
#
|
|
826
|
+
#: (GlobalVariableWriteNode node) -> void
|
|
374
827
|
def visit_global_variable_write_node(node)
|
|
375
828
|
node.each_child_node { |node| node.accept(self) }
|
|
376
829
|
end
|
|
377
830
|
|
|
378
831
|
# Visit a HashNode node
|
|
832
|
+
#
|
|
833
|
+
#: (HashNode node) -> void
|
|
379
834
|
def visit_hash_node(node)
|
|
380
835
|
node.each_child_node { |node| node.accept(self) }
|
|
381
836
|
end
|
|
382
837
|
|
|
383
838
|
# Visit a HashPatternNode node
|
|
839
|
+
#
|
|
840
|
+
#: (HashPatternNode node) -> void
|
|
384
841
|
def visit_hash_pattern_node(node)
|
|
385
842
|
node.each_child_node { |node| node.accept(self) }
|
|
386
843
|
end
|
|
387
844
|
|
|
388
845
|
# Visit a IfNode node
|
|
846
|
+
#
|
|
847
|
+
#: (IfNode node) -> void
|
|
389
848
|
def visit_if_node(node)
|
|
390
849
|
node.each_child_node { |node| node.accept(self) }
|
|
391
850
|
end
|
|
392
851
|
|
|
393
852
|
# Visit a ImaginaryNode node
|
|
853
|
+
#
|
|
854
|
+
#: (ImaginaryNode node) -> void
|
|
394
855
|
def visit_imaginary_node(node)
|
|
395
856
|
node.each_child_node { |node| node.accept(self) }
|
|
396
857
|
end
|
|
397
858
|
|
|
398
859
|
# Visit a ImplicitNode node
|
|
860
|
+
#
|
|
861
|
+
#: (ImplicitNode node) -> void
|
|
399
862
|
def visit_implicit_node(node)
|
|
400
863
|
node.each_child_node { |node| node.accept(self) }
|
|
401
864
|
end
|
|
402
865
|
|
|
403
866
|
# Visit a ImplicitRestNode node
|
|
867
|
+
#
|
|
868
|
+
#: (ImplicitRestNode node) -> void
|
|
404
869
|
def visit_implicit_rest_node(node)
|
|
405
870
|
node.each_child_node { |node| node.accept(self) }
|
|
406
871
|
end
|
|
407
872
|
|
|
408
873
|
# Visit a InNode node
|
|
874
|
+
#
|
|
875
|
+
#: (InNode node) -> void
|
|
409
876
|
def visit_in_node(node)
|
|
410
877
|
node.each_child_node { |node| node.accept(self) }
|
|
411
878
|
end
|
|
412
879
|
|
|
413
880
|
# Visit a IndexAndWriteNode node
|
|
881
|
+
#
|
|
882
|
+
#: (IndexAndWriteNode node) -> void
|
|
414
883
|
def visit_index_and_write_node(node)
|
|
415
884
|
node.each_child_node { |node| node.accept(self) }
|
|
416
885
|
end
|
|
417
886
|
|
|
418
887
|
# Visit a IndexOperatorWriteNode node
|
|
888
|
+
#
|
|
889
|
+
#: (IndexOperatorWriteNode node) -> void
|
|
419
890
|
def visit_index_operator_write_node(node)
|
|
420
891
|
node.each_child_node { |node| node.accept(self) }
|
|
421
892
|
end
|
|
422
893
|
|
|
423
894
|
# Visit a IndexOrWriteNode node
|
|
895
|
+
#
|
|
896
|
+
#: (IndexOrWriteNode node) -> void
|
|
424
897
|
def visit_index_or_write_node(node)
|
|
425
898
|
node.each_child_node { |node| node.accept(self) }
|
|
426
899
|
end
|
|
427
900
|
|
|
428
901
|
# Visit a IndexTargetNode node
|
|
902
|
+
#
|
|
903
|
+
#: (IndexTargetNode node) -> void
|
|
429
904
|
def visit_index_target_node(node)
|
|
430
905
|
node.each_child_node { |node| node.accept(self) }
|
|
431
906
|
end
|
|
432
907
|
|
|
433
908
|
# Visit a InstanceVariableAndWriteNode node
|
|
909
|
+
#
|
|
910
|
+
#: (InstanceVariableAndWriteNode node) -> void
|
|
434
911
|
def visit_instance_variable_and_write_node(node)
|
|
435
912
|
node.each_child_node { |node| node.accept(self) }
|
|
436
913
|
end
|
|
437
914
|
|
|
438
915
|
# Visit a InstanceVariableOperatorWriteNode node
|
|
916
|
+
#
|
|
917
|
+
#: (InstanceVariableOperatorWriteNode node) -> void
|
|
439
918
|
def visit_instance_variable_operator_write_node(node)
|
|
440
919
|
node.each_child_node { |node| node.accept(self) }
|
|
441
920
|
end
|
|
442
921
|
|
|
443
922
|
# Visit a InstanceVariableOrWriteNode node
|
|
923
|
+
#
|
|
924
|
+
#: (InstanceVariableOrWriteNode node) -> void
|
|
444
925
|
def visit_instance_variable_or_write_node(node)
|
|
445
926
|
node.each_child_node { |node| node.accept(self) }
|
|
446
927
|
end
|
|
447
928
|
|
|
448
929
|
# Visit a InstanceVariableReadNode node
|
|
930
|
+
#
|
|
931
|
+
#: (InstanceVariableReadNode node) -> void
|
|
449
932
|
def visit_instance_variable_read_node(node)
|
|
450
933
|
node.each_child_node { |node| node.accept(self) }
|
|
451
934
|
end
|
|
452
935
|
|
|
453
936
|
# Visit a InstanceVariableTargetNode node
|
|
937
|
+
#
|
|
938
|
+
#: (InstanceVariableTargetNode node) -> void
|
|
454
939
|
def visit_instance_variable_target_node(node)
|
|
455
940
|
node.each_child_node { |node| node.accept(self) }
|
|
456
941
|
end
|
|
457
942
|
|
|
458
943
|
# Visit a InstanceVariableWriteNode node
|
|
944
|
+
#
|
|
945
|
+
#: (InstanceVariableWriteNode node) -> void
|
|
459
946
|
def visit_instance_variable_write_node(node)
|
|
460
947
|
node.each_child_node { |node| node.accept(self) }
|
|
461
948
|
end
|
|
462
949
|
|
|
463
950
|
# Visit a IntegerNode node
|
|
951
|
+
#
|
|
952
|
+
#: (IntegerNode node) -> void
|
|
464
953
|
def visit_integer_node(node)
|
|
465
954
|
node.each_child_node { |node| node.accept(self) }
|
|
466
955
|
end
|
|
467
956
|
|
|
468
957
|
# Visit a InterpolatedMatchLastLineNode node
|
|
958
|
+
#
|
|
959
|
+
#: (InterpolatedMatchLastLineNode node) -> void
|
|
469
960
|
def visit_interpolated_match_last_line_node(node)
|
|
470
961
|
node.each_child_node { |node| node.accept(self) }
|
|
471
962
|
end
|
|
472
963
|
|
|
473
964
|
# Visit a InterpolatedRegularExpressionNode node
|
|
965
|
+
#
|
|
966
|
+
#: (InterpolatedRegularExpressionNode node) -> void
|
|
474
967
|
def visit_interpolated_regular_expression_node(node)
|
|
475
968
|
node.each_child_node { |node| node.accept(self) }
|
|
476
969
|
end
|
|
477
970
|
|
|
478
971
|
# Visit a InterpolatedStringNode node
|
|
972
|
+
#
|
|
973
|
+
#: (InterpolatedStringNode node) -> void
|
|
479
974
|
def visit_interpolated_string_node(node)
|
|
480
975
|
node.each_child_node { |node| node.accept(self) }
|
|
481
976
|
end
|
|
482
977
|
|
|
483
978
|
# Visit a InterpolatedSymbolNode node
|
|
979
|
+
#
|
|
980
|
+
#: (InterpolatedSymbolNode node) -> void
|
|
484
981
|
def visit_interpolated_symbol_node(node)
|
|
485
982
|
node.each_child_node { |node| node.accept(self) }
|
|
486
983
|
end
|
|
487
984
|
|
|
488
985
|
# Visit a InterpolatedXStringNode node
|
|
986
|
+
#
|
|
987
|
+
#: (InterpolatedXStringNode node) -> void
|
|
489
988
|
def visit_interpolated_x_string_node(node)
|
|
490
989
|
node.each_child_node { |node| node.accept(self) }
|
|
491
990
|
end
|
|
492
991
|
|
|
493
992
|
# Visit a ItLocalVariableReadNode node
|
|
993
|
+
#
|
|
994
|
+
#: (ItLocalVariableReadNode node) -> void
|
|
494
995
|
def visit_it_local_variable_read_node(node)
|
|
495
996
|
node.each_child_node { |node| node.accept(self) }
|
|
496
997
|
end
|
|
497
998
|
|
|
498
999
|
# Visit a ItParametersNode node
|
|
1000
|
+
#
|
|
1001
|
+
#: (ItParametersNode node) -> void
|
|
499
1002
|
def visit_it_parameters_node(node)
|
|
500
1003
|
node.each_child_node { |node| node.accept(self) }
|
|
501
1004
|
end
|
|
502
1005
|
|
|
503
1006
|
# Visit a KeywordHashNode node
|
|
1007
|
+
#
|
|
1008
|
+
#: (KeywordHashNode node) -> void
|
|
504
1009
|
def visit_keyword_hash_node(node)
|
|
505
1010
|
node.each_child_node { |node| node.accept(self) }
|
|
506
1011
|
end
|
|
507
1012
|
|
|
508
1013
|
# Visit a KeywordRestParameterNode node
|
|
1014
|
+
#
|
|
1015
|
+
#: (KeywordRestParameterNode node) -> void
|
|
509
1016
|
def visit_keyword_rest_parameter_node(node)
|
|
510
1017
|
node.each_child_node { |node| node.accept(self) }
|
|
511
1018
|
end
|
|
512
1019
|
|
|
513
1020
|
# Visit a LambdaNode node
|
|
1021
|
+
#
|
|
1022
|
+
#: (LambdaNode node) -> void
|
|
514
1023
|
def visit_lambda_node(node)
|
|
515
1024
|
node.each_child_node { |node| node.accept(self) }
|
|
516
1025
|
end
|
|
517
1026
|
|
|
518
1027
|
# Visit a LocalVariableAndWriteNode node
|
|
1028
|
+
#
|
|
1029
|
+
#: (LocalVariableAndWriteNode node) -> void
|
|
519
1030
|
def visit_local_variable_and_write_node(node)
|
|
520
1031
|
node.each_child_node { |node| node.accept(self) }
|
|
521
1032
|
end
|
|
522
1033
|
|
|
523
1034
|
# Visit a LocalVariableOperatorWriteNode node
|
|
1035
|
+
#
|
|
1036
|
+
#: (LocalVariableOperatorWriteNode node) -> void
|
|
524
1037
|
def visit_local_variable_operator_write_node(node)
|
|
525
1038
|
node.each_child_node { |node| node.accept(self) }
|
|
526
1039
|
end
|
|
527
1040
|
|
|
528
1041
|
# Visit a LocalVariableOrWriteNode node
|
|
1042
|
+
#
|
|
1043
|
+
#: (LocalVariableOrWriteNode node) -> void
|
|
529
1044
|
def visit_local_variable_or_write_node(node)
|
|
530
1045
|
node.each_child_node { |node| node.accept(self) }
|
|
531
1046
|
end
|
|
532
1047
|
|
|
533
1048
|
# Visit a LocalVariableReadNode node
|
|
1049
|
+
#
|
|
1050
|
+
#: (LocalVariableReadNode node) -> void
|
|
534
1051
|
def visit_local_variable_read_node(node)
|
|
535
1052
|
node.each_child_node { |node| node.accept(self) }
|
|
536
1053
|
end
|
|
537
1054
|
|
|
538
1055
|
# Visit a LocalVariableTargetNode node
|
|
1056
|
+
#
|
|
1057
|
+
#: (LocalVariableTargetNode node) -> void
|
|
539
1058
|
def visit_local_variable_target_node(node)
|
|
540
1059
|
node.each_child_node { |node| node.accept(self) }
|
|
541
1060
|
end
|
|
542
1061
|
|
|
543
1062
|
# Visit a LocalVariableWriteNode node
|
|
1063
|
+
#
|
|
1064
|
+
#: (LocalVariableWriteNode node) -> void
|
|
544
1065
|
def visit_local_variable_write_node(node)
|
|
545
1066
|
node.each_child_node { |node| node.accept(self) }
|
|
546
1067
|
end
|
|
547
1068
|
|
|
548
1069
|
# Visit a MatchLastLineNode node
|
|
1070
|
+
#
|
|
1071
|
+
#: (MatchLastLineNode node) -> void
|
|
549
1072
|
def visit_match_last_line_node(node)
|
|
550
1073
|
node.each_child_node { |node| node.accept(self) }
|
|
551
1074
|
end
|
|
552
1075
|
|
|
553
1076
|
# Visit a MatchPredicateNode node
|
|
1077
|
+
#
|
|
1078
|
+
#: (MatchPredicateNode node) -> void
|
|
554
1079
|
def visit_match_predicate_node(node)
|
|
555
1080
|
node.each_child_node { |node| node.accept(self) }
|
|
556
1081
|
end
|
|
557
1082
|
|
|
558
1083
|
# Visit a MatchRequiredNode node
|
|
1084
|
+
#
|
|
1085
|
+
#: (MatchRequiredNode node) -> void
|
|
559
1086
|
def visit_match_required_node(node)
|
|
560
1087
|
node.each_child_node { |node| node.accept(self) }
|
|
561
1088
|
end
|
|
562
1089
|
|
|
563
1090
|
# Visit a MatchWriteNode node
|
|
1091
|
+
#
|
|
1092
|
+
#: (MatchWriteNode node) -> void
|
|
564
1093
|
def visit_match_write_node(node)
|
|
565
1094
|
node.each_child_node { |node| node.accept(self) }
|
|
566
1095
|
end
|
|
567
1096
|
|
|
568
|
-
# Visit a MissingNode node
|
|
569
|
-
def visit_missing_node(node)
|
|
570
|
-
node.each_child_node { |node| node.accept(self) }
|
|
571
|
-
end
|
|
572
|
-
|
|
573
1097
|
# Visit a ModuleNode node
|
|
1098
|
+
#
|
|
1099
|
+
#: (ModuleNode node) -> void
|
|
574
1100
|
def visit_module_node(node)
|
|
575
1101
|
node.each_child_node { |node| node.accept(self) }
|
|
576
1102
|
end
|
|
577
1103
|
|
|
578
1104
|
# Visit a MultiTargetNode node
|
|
1105
|
+
#
|
|
1106
|
+
#: (MultiTargetNode node) -> void
|
|
579
1107
|
def visit_multi_target_node(node)
|
|
580
1108
|
node.each_child_node { |node| node.accept(self) }
|
|
581
1109
|
end
|
|
582
1110
|
|
|
583
1111
|
# Visit a MultiWriteNode node
|
|
1112
|
+
#
|
|
1113
|
+
#: (MultiWriteNode node) -> void
|
|
584
1114
|
def visit_multi_write_node(node)
|
|
585
1115
|
node.each_child_node { |node| node.accept(self) }
|
|
586
1116
|
end
|
|
587
1117
|
|
|
588
1118
|
# Visit a NextNode node
|
|
1119
|
+
#
|
|
1120
|
+
#: (NextNode node) -> void
|
|
589
1121
|
def visit_next_node(node)
|
|
590
1122
|
node.each_child_node { |node| node.accept(self) }
|
|
591
1123
|
end
|
|
592
1124
|
|
|
593
1125
|
# Visit a NilNode node
|
|
1126
|
+
#
|
|
1127
|
+
#: (NilNode node) -> void
|
|
594
1128
|
def visit_nil_node(node)
|
|
595
1129
|
node.each_child_node { |node| node.accept(self) }
|
|
596
1130
|
end
|
|
597
1131
|
|
|
1132
|
+
# Visit a NoBlockParameterNode node
|
|
1133
|
+
#
|
|
1134
|
+
#: (NoBlockParameterNode node) -> void
|
|
1135
|
+
def visit_no_block_parameter_node(node)
|
|
1136
|
+
node.each_child_node { |node| node.accept(self) }
|
|
1137
|
+
end
|
|
1138
|
+
|
|
598
1139
|
# Visit a NoKeywordsParameterNode node
|
|
1140
|
+
#
|
|
1141
|
+
#: (NoKeywordsParameterNode node) -> void
|
|
599
1142
|
def visit_no_keywords_parameter_node(node)
|
|
600
1143
|
node.each_child_node { |node| node.accept(self) }
|
|
601
1144
|
end
|
|
602
1145
|
|
|
603
1146
|
# Visit a NumberedParametersNode node
|
|
1147
|
+
#
|
|
1148
|
+
#: (NumberedParametersNode node) -> void
|
|
604
1149
|
def visit_numbered_parameters_node(node)
|
|
605
1150
|
node.each_child_node { |node| node.accept(self) }
|
|
606
1151
|
end
|
|
607
1152
|
|
|
608
1153
|
# Visit a NumberedReferenceReadNode node
|
|
1154
|
+
#
|
|
1155
|
+
#: (NumberedReferenceReadNode node) -> void
|
|
609
1156
|
def visit_numbered_reference_read_node(node)
|
|
610
1157
|
node.each_child_node { |node| node.accept(self) }
|
|
611
1158
|
end
|
|
612
1159
|
|
|
613
1160
|
# Visit a OptionalKeywordParameterNode node
|
|
1161
|
+
#
|
|
1162
|
+
#: (OptionalKeywordParameterNode node) -> void
|
|
614
1163
|
def visit_optional_keyword_parameter_node(node)
|
|
615
1164
|
node.each_child_node { |node| node.accept(self) }
|
|
616
1165
|
end
|
|
617
1166
|
|
|
618
1167
|
# Visit a OptionalParameterNode node
|
|
1168
|
+
#
|
|
1169
|
+
#: (OptionalParameterNode node) -> void
|
|
619
1170
|
def visit_optional_parameter_node(node)
|
|
620
1171
|
node.each_child_node { |node| node.accept(self) }
|
|
621
1172
|
end
|
|
622
1173
|
|
|
623
1174
|
# Visit a OrNode node
|
|
1175
|
+
#
|
|
1176
|
+
#: (OrNode node) -> void
|
|
624
1177
|
def visit_or_node(node)
|
|
625
1178
|
node.each_child_node { |node| node.accept(self) }
|
|
626
1179
|
end
|
|
627
1180
|
|
|
628
1181
|
# Visit a ParametersNode node
|
|
1182
|
+
#
|
|
1183
|
+
#: (ParametersNode node) -> void
|
|
629
1184
|
def visit_parameters_node(node)
|
|
630
1185
|
node.each_child_node { |node| node.accept(self) }
|
|
631
1186
|
end
|
|
632
1187
|
|
|
633
1188
|
# Visit a ParenthesesNode node
|
|
1189
|
+
#
|
|
1190
|
+
#: (ParenthesesNode node) -> void
|
|
634
1191
|
def visit_parentheses_node(node)
|
|
635
1192
|
node.each_child_node { |node| node.accept(self) }
|
|
636
1193
|
end
|
|
637
1194
|
|
|
638
1195
|
# Visit a PinnedExpressionNode node
|
|
1196
|
+
#
|
|
1197
|
+
#: (PinnedExpressionNode node) -> void
|
|
639
1198
|
def visit_pinned_expression_node(node)
|
|
640
1199
|
node.each_child_node { |node| node.accept(self) }
|
|
641
1200
|
end
|
|
642
1201
|
|
|
643
1202
|
# Visit a PinnedVariableNode node
|
|
1203
|
+
#
|
|
1204
|
+
#: (PinnedVariableNode node) -> void
|
|
644
1205
|
def visit_pinned_variable_node(node)
|
|
645
1206
|
node.each_child_node { |node| node.accept(self) }
|
|
646
1207
|
end
|
|
647
1208
|
|
|
648
1209
|
# Visit a PostExecutionNode node
|
|
1210
|
+
#
|
|
1211
|
+
#: (PostExecutionNode node) -> void
|
|
649
1212
|
def visit_post_execution_node(node)
|
|
650
1213
|
node.each_child_node { |node| node.accept(self) }
|
|
651
1214
|
end
|
|
652
1215
|
|
|
653
1216
|
# Visit a PreExecutionNode node
|
|
1217
|
+
#
|
|
1218
|
+
#: (PreExecutionNode node) -> void
|
|
654
1219
|
def visit_pre_execution_node(node)
|
|
655
1220
|
node.each_child_node { |node| node.accept(self) }
|
|
656
1221
|
end
|
|
657
1222
|
|
|
658
1223
|
# Visit a ProgramNode node
|
|
1224
|
+
#
|
|
1225
|
+
#: (ProgramNode node) -> void
|
|
659
1226
|
def visit_program_node(node)
|
|
660
1227
|
node.each_child_node { |node| node.accept(self) }
|
|
661
1228
|
end
|
|
662
1229
|
|
|
663
1230
|
# Visit a RangeNode node
|
|
1231
|
+
#
|
|
1232
|
+
#: (RangeNode node) -> void
|
|
664
1233
|
def visit_range_node(node)
|
|
665
1234
|
node.each_child_node { |node| node.accept(self) }
|
|
666
1235
|
end
|
|
667
1236
|
|
|
668
1237
|
# Visit a RationalNode node
|
|
1238
|
+
#
|
|
1239
|
+
#: (RationalNode node) -> void
|
|
669
1240
|
def visit_rational_node(node)
|
|
670
1241
|
node.each_child_node { |node| node.accept(self) }
|
|
671
1242
|
end
|
|
672
1243
|
|
|
673
1244
|
# Visit a RedoNode node
|
|
1245
|
+
#
|
|
1246
|
+
#: (RedoNode node) -> void
|
|
674
1247
|
def visit_redo_node(node)
|
|
675
1248
|
node.each_child_node { |node| node.accept(self) }
|
|
676
1249
|
end
|
|
677
1250
|
|
|
678
1251
|
# Visit a RegularExpressionNode node
|
|
1252
|
+
#
|
|
1253
|
+
#: (RegularExpressionNode node) -> void
|
|
679
1254
|
def visit_regular_expression_node(node)
|
|
680
1255
|
node.each_child_node { |node| node.accept(self) }
|
|
681
1256
|
end
|
|
682
1257
|
|
|
683
1258
|
# Visit a RequiredKeywordParameterNode node
|
|
1259
|
+
#
|
|
1260
|
+
#: (RequiredKeywordParameterNode node) -> void
|
|
684
1261
|
def visit_required_keyword_parameter_node(node)
|
|
685
1262
|
node.each_child_node { |node| node.accept(self) }
|
|
686
1263
|
end
|
|
687
1264
|
|
|
688
1265
|
# Visit a RequiredParameterNode node
|
|
1266
|
+
#
|
|
1267
|
+
#: (RequiredParameterNode node) -> void
|
|
689
1268
|
def visit_required_parameter_node(node)
|
|
690
1269
|
node.each_child_node { |node| node.accept(self) }
|
|
691
1270
|
end
|
|
692
1271
|
|
|
693
1272
|
# Visit a RescueModifierNode node
|
|
1273
|
+
#
|
|
1274
|
+
#: (RescueModifierNode node) -> void
|
|
694
1275
|
def visit_rescue_modifier_node(node)
|
|
695
1276
|
node.each_child_node { |node| node.accept(self) }
|
|
696
1277
|
end
|
|
697
1278
|
|
|
698
1279
|
# Visit a RescueNode node
|
|
1280
|
+
#
|
|
1281
|
+
#: (RescueNode node) -> void
|
|
699
1282
|
def visit_rescue_node(node)
|
|
700
1283
|
node.each_child_node { |node| node.accept(self) }
|
|
701
1284
|
end
|
|
702
1285
|
|
|
703
1286
|
# Visit a RestParameterNode node
|
|
1287
|
+
#
|
|
1288
|
+
#: (RestParameterNode node) -> void
|
|
704
1289
|
def visit_rest_parameter_node(node)
|
|
705
1290
|
node.each_child_node { |node| node.accept(self) }
|
|
706
1291
|
end
|
|
707
1292
|
|
|
708
1293
|
# Visit a RetryNode node
|
|
1294
|
+
#
|
|
1295
|
+
#: (RetryNode node) -> void
|
|
709
1296
|
def visit_retry_node(node)
|
|
710
1297
|
node.each_child_node { |node| node.accept(self) }
|
|
711
1298
|
end
|
|
712
1299
|
|
|
713
1300
|
# Visit a ReturnNode node
|
|
1301
|
+
#
|
|
1302
|
+
#: (ReturnNode node) -> void
|
|
714
1303
|
def visit_return_node(node)
|
|
715
1304
|
node.each_child_node { |node| node.accept(self) }
|
|
716
1305
|
end
|
|
717
1306
|
|
|
718
1307
|
# Visit a SelfNode node
|
|
1308
|
+
#
|
|
1309
|
+
#: (SelfNode node) -> void
|
|
719
1310
|
def visit_self_node(node)
|
|
720
1311
|
node.each_child_node { |node| node.accept(self) }
|
|
721
1312
|
end
|
|
722
1313
|
|
|
723
1314
|
# Visit a ShareableConstantNode node
|
|
1315
|
+
#
|
|
1316
|
+
#: (ShareableConstantNode node) -> void
|
|
724
1317
|
def visit_shareable_constant_node(node)
|
|
725
1318
|
node.each_child_node { |node| node.accept(self) }
|
|
726
1319
|
end
|
|
727
1320
|
|
|
728
1321
|
# Visit a SingletonClassNode node
|
|
1322
|
+
#
|
|
1323
|
+
#: (SingletonClassNode node) -> void
|
|
729
1324
|
def visit_singleton_class_node(node)
|
|
730
1325
|
node.each_child_node { |node| node.accept(self) }
|
|
731
1326
|
end
|
|
732
1327
|
|
|
733
1328
|
# Visit a SourceEncodingNode node
|
|
1329
|
+
#
|
|
1330
|
+
#: (SourceEncodingNode node) -> void
|
|
734
1331
|
def visit_source_encoding_node(node)
|
|
735
1332
|
node.each_child_node { |node| node.accept(self) }
|
|
736
1333
|
end
|
|
737
1334
|
|
|
738
1335
|
# Visit a SourceFileNode node
|
|
1336
|
+
#
|
|
1337
|
+
#: (SourceFileNode node) -> void
|
|
739
1338
|
def visit_source_file_node(node)
|
|
740
1339
|
node.each_child_node { |node| node.accept(self) }
|
|
741
1340
|
end
|
|
742
1341
|
|
|
743
1342
|
# Visit a SourceLineNode node
|
|
1343
|
+
#
|
|
1344
|
+
#: (SourceLineNode node) -> void
|
|
744
1345
|
def visit_source_line_node(node)
|
|
745
1346
|
node.each_child_node { |node| node.accept(self) }
|
|
746
1347
|
end
|
|
747
1348
|
|
|
748
1349
|
# Visit a SplatNode node
|
|
1350
|
+
#
|
|
1351
|
+
#: (SplatNode node) -> void
|
|
749
1352
|
def visit_splat_node(node)
|
|
750
1353
|
node.each_child_node { |node| node.accept(self) }
|
|
751
1354
|
end
|
|
752
1355
|
|
|
753
1356
|
# Visit a StatementsNode node
|
|
1357
|
+
#
|
|
1358
|
+
#: (StatementsNode node) -> void
|
|
754
1359
|
def visit_statements_node(node)
|
|
755
1360
|
node.each_child_node { |node| node.accept(self) }
|
|
756
1361
|
end
|
|
757
1362
|
|
|
758
1363
|
# Visit a StringNode node
|
|
1364
|
+
#
|
|
1365
|
+
#: (StringNode node) -> void
|
|
759
1366
|
def visit_string_node(node)
|
|
760
1367
|
node.each_child_node { |node| node.accept(self) }
|
|
761
1368
|
end
|
|
762
1369
|
|
|
763
1370
|
# Visit a SuperNode node
|
|
1371
|
+
#
|
|
1372
|
+
#: (SuperNode node) -> void
|
|
764
1373
|
def visit_super_node(node)
|
|
765
1374
|
node.each_child_node { |node| node.accept(self) }
|
|
766
1375
|
end
|
|
767
1376
|
|
|
768
1377
|
# Visit a SymbolNode node
|
|
1378
|
+
#
|
|
1379
|
+
#: (SymbolNode node) -> void
|
|
769
1380
|
def visit_symbol_node(node)
|
|
770
1381
|
node.each_child_node { |node| node.accept(self) }
|
|
771
1382
|
end
|
|
772
1383
|
|
|
773
1384
|
# Visit a TrueNode node
|
|
1385
|
+
#
|
|
1386
|
+
#: (TrueNode node) -> void
|
|
774
1387
|
def visit_true_node(node)
|
|
775
1388
|
node.each_child_node { |node| node.accept(self) }
|
|
776
1389
|
end
|
|
777
1390
|
|
|
778
1391
|
# Visit a UndefNode node
|
|
1392
|
+
#
|
|
1393
|
+
#: (UndefNode node) -> void
|
|
779
1394
|
def visit_undef_node(node)
|
|
780
1395
|
node.each_child_node { |node| node.accept(self) }
|
|
781
1396
|
end
|
|
782
1397
|
|
|
783
1398
|
# Visit a UnlessNode node
|
|
1399
|
+
#
|
|
1400
|
+
#: (UnlessNode node) -> void
|
|
784
1401
|
def visit_unless_node(node)
|
|
785
1402
|
node.each_child_node { |node| node.accept(self) }
|
|
786
1403
|
end
|
|
787
1404
|
|
|
788
1405
|
# Visit a UntilNode node
|
|
1406
|
+
#
|
|
1407
|
+
#: (UntilNode node) -> void
|
|
789
1408
|
def visit_until_node(node)
|
|
790
1409
|
node.each_child_node { |node| node.accept(self) }
|
|
791
1410
|
end
|
|
792
1411
|
|
|
793
1412
|
# Visit a WhenNode node
|
|
1413
|
+
#
|
|
1414
|
+
#: (WhenNode node) -> void
|
|
794
1415
|
def visit_when_node(node)
|
|
795
1416
|
node.each_child_node { |node| node.accept(self) }
|
|
796
1417
|
end
|
|
797
1418
|
|
|
798
1419
|
# Visit a WhileNode node
|
|
1420
|
+
#
|
|
1421
|
+
#: (WhileNode node) -> void
|
|
799
1422
|
def visit_while_node(node)
|
|
800
1423
|
node.each_child_node { |node| node.accept(self) }
|
|
801
1424
|
end
|
|
802
1425
|
|
|
803
1426
|
# Visit a XStringNode node
|
|
1427
|
+
#
|
|
1428
|
+
#: (XStringNode node) -> void
|
|
804
1429
|
def visit_x_string_node(node)
|
|
805
1430
|
node.each_child_node { |node| node.accept(self) }
|
|
806
1431
|
end
|
|
807
1432
|
|
|
808
1433
|
# Visit a YieldNode node
|
|
1434
|
+
#
|
|
1435
|
+
#: (YieldNode node) -> void
|
|
809
1436
|
def visit_yield_node(node)
|
|
810
1437
|
node.each_child_node { |node| node.accept(self) }
|
|
811
1438
|
end
|