prism 0.17.1 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +60 -1
- data/Makefile +5 -5
- data/README.md +4 -3
- data/config.yml +214 -68
- data/docs/build_system.md +6 -6
- data/docs/building.md +10 -3
- data/docs/configuration.md +11 -9
- data/docs/encoding.md +92 -88
- data/docs/heredocs.md +1 -1
- data/docs/javascript.md +29 -1
- data/docs/local_variable_depth.md +229 -0
- data/docs/ruby_api.md +16 -0
- data/docs/serialization.md +18 -13
- data/ext/prism/api_node.c +411 -240
- data/ext/prism/extconf.rb +97 -127
- data/ext/prism/extension.c +97 -33
- data/ext/prism/extension.h +1 -1
- data/include/prism/ast.h +377 -159
- data/include/prism/defines.h +17 -0
- data/include/prism/diagnostic.h +38 -6
- data/include/prism/{enc/pm_encoding.h → encoding.h} +126 -64
- data/include/prism/options.h +2 -2
- data/include/prism/parser.h +62 -36
- data/include/prism/regexp.h +2 -2
- data/include/prism/util/pm_buffer.h +9 -1
- data/include/prism/util/pm_memchr.h +2 -2
- data/include/prism/util/pm_strpbrk.h +3 -3
- data/include/prism/version.h +3 -3
- data/include/prism.h +13 -15
- data/lib/prism/compiler.rb +15 -3
- data/lib/prism/debug.rb +13 -4
- data/lib/prism/desugar_compiler.rb +4 -3
- data/lib/prism/dispatcher.rb +70 -14
- data/lib/prism/dot_visitor.rb +4612 -0
- data/lib/prism/dsl.rb +77 -57
- data/lib/prism/ffi.rb +19 -6
- data/lib/prism/lex_compat.rb +19 -9
- data/lib/prism/mutation_compiler.rb +26 -6
- data/lib/prism/node.rb +1314 -522
- data/lib/prism/node_ext.rb +102 -19
- data/lib/prism/parse_result.rb +58 -27
- data/lib/prism/ripper_compat.rb +49 -34
- data/lib/prism/serialize.rb +251 -227
- data/lib/prism/visitor.rb +15 -3
- data/lib/prism.rb +21 -4
- data/prism.gemspec +7 -9
- data/rbi/prism.rbi +688 -284
- data/rbi/prism_static.rbi +3 -0
- data/sig/prism.rbs +426 -156
- data/sig/prism_static.rbs +1 -0
- data/src/diagnostic.c +280 -216
- data/src/encoding.c +5137 -0
- data/src/node.c +99 -21
- data/src/options.c +21 -2
- data/src/prettyprint.c +1743 -1241
- data/src/prism.c +1774 -831
- data/src/regexp.c +15 -15
- data/src/serialize.c +261 -164
- data/src/util/pm_buffer.c +10 -1
- data/src/util/pm_memchr.c +1 -1
- data/src/util/pm_strpbrk.c +4 -4
- metadata +8 -10
- data/src/enc/pm_big5.c +0 -53
- data/src/enc/pm_euc_jp.c +0 -59
- data/src/enc/pm_gbk.c +0 -62
- data/src/enc/pm_shift_jis.c +0 -57
- data/src/enc/pm_tables.c +0 -743
- data/src/enc/pm_unicode.c +0 -2369
- data/src/enc/pm_windows_31j.c +0 -57
data/lib/prism/serialize.rb
CHANGED
@@ -27,11 +27,11 @@ module Prism
|
|
27
27
|
|
28
28
|
# The minor version of prism that we are expecting to find in the serialized
|
29
29
|
# strings.
|
30
|
-
MINOR_VERSION =
|
30
|
+
MINOR_VERSION = 19
|
31
31
|
|
32
32
|
# The patch version of prism that we are expecting to find in the serialized
|
33
33
|
# strings.
|
34
|
-
PATCH_VERSION =
|
34
|
+
PATCH_VERSION = 0
|
35
35
|
|
36
36
|
# Deserialize the AST represented by the given string into a parse result.
|
37
37
|
def self.load(input, serialized)
|
@@ -80,21 +80,18 @@ module Prism
|
|
80
80
|
end
|
81
81
|
|
82
82
|
def load_encoding
|
83
|
-
Encoding.find(io.read(
|
84
|
-
end
|
85
|
-
|
86
|
-
def load_force_encoding
|
87
|
-
@encoding = load_encoding
|
83
|
+
@encoding = Encoding.find(io.read(load_varuint))
|
88
84
|
@input = input.force_encoding(@encoding).freeze
|
85
|
+
@encoding
|
89
86
|
end
|
90
87
|
|
91
88
|
def load_start_line
|
92
|
-
source.start_line =
|
89
|
+
source.start_line = load_varsint
|
93
90
|
end
|
94
91
|
|
95
92
|
def load_comments
|
96
|
-
|
97
|
-
case
|
93
|
+
load_varuint.times.map do
|
94
|
+
case load_varuint
|
98
95
|
when 0 then InlineComment.new(load_location)
|
99
96
|
when 1 then EmbDocComment.new(load_location)
|
100
97
|
when 2 then DATAComment.new(load_location)
|
@@ -104,18 +101,19 @@ module Prism
|
|
104
101
|
|
105
102
|
def load_metadata
|
106
103
|
comments = load_comments
|
107
|
-
magic_comments =
|
108
|
-
|
109
|
-
|
110
|
-
|
104
|
+
magic_comments = load_varuint.times.map { MagicComment.new(load_location, load_location) }
|
105
|
+
data_loc = load_optional_location
|
106
|
+
errors = load_varuint.times.map { ParseError.new(load_embedded_string, load_location) }
|
107
|
+
warnings = load_varuint.times.map { ParseWarning.new(load_embedded_string, load_location) }
|
108
|
+
[comments, magic_comments, data_loc, errors, warnings]
|
111
109
|
end
|
112
110
|
|
113
111
|
def load_tokens
|
114
112
|
tokens = []
|
115
|
-
while type = TOKEN_TYPES.fetch(
|
116
|
-
start =
|
117
|
-
length =
|
118
|
-
lex_state =
|
113
|
+
while type = TOKEN_TYPES.fetch(load_varuint)
|
114
|
+
start = load_varuint
|
115
|
+
length = load_varuint
|
116
|
+
lex_state = load_varuint
|
119
117
|
location = Location.new(@source, start, length)
|
120
118
|
tokens << [Prism::Token.new(type, location.slice, location), lex_state]
|
121
119
|
end
|
@@ -127,39 +125,36 @@ module Prism
|
|
127
125
|
tokens = load_tokens
|
128
126
|
encoding = load_encoding
|
129
127
|
load_start_line
|
130
|
-
comments, magic_comments, errors, warnings = load_metadata
|
131
|
-
|
132
|
-
if encoding != @encoding
|
133
|
-
tokens.each { |token,| token.value.force_encoding(encoding) }
|
134
|
-
end
|
128
|
+
comments, magic_comments, data_loc, errors, warnings = load_metadata
|
129
|
+
tokens.each { |token,| token.value.force_encoding(encoding) }
|
135
130
|
|
136
131
|
raise "Expected to consume all bytes while deserializing" unless @io.eof?
|
137
|
-
Prism::ParseResult.new(tokens, comments, magic_comments, errors, warnings, @source)
|
132
|
+
Prism::ParseResult.new(tokens, comments, magic_comments, data_loc, errors, warnings, @source)
|
138
133
|
end
|
139
134
|
|
140
135
|
def load_nodes
|
141
136
|
load_header
|
142
|
-
|
137
|
+
load_encoding
|
143
138
|
load_start_line
|
144
139
|
|
145
|
-
comments, magic_comments, errors, warnings = load_metadata
|
140
|
+
comments, magic_comments, data_loc, errors, warnings = load_metadata
|
146
141
|
|
147
142
|
@constant_pool_offset = io.read(4).unpack1("L")
|
148
|
-
@constant_pool = Array.new(
|
143
|
+
@constant_pool = Array.new(load_varuint, nil)
|
149
144
|
|
150
|
-
[load_node, comments, magic_comments, errors, warnings]
|
145
|
+
[load_node, comments, magic_comments, data_loc, errors, warnings]
|
151
146
|
end
|
152
147
|
|
153
148
|
def load_result
|
154
|
-
node, comments, magic_comments, errors, warnings = load_nodes
|
155
|
-
Prism::ParseResult.new(node, comments, magic_comments, errors, warnings, @source)
|
149
|
+
node, comments, magic_comments, data_loc, errors, warnings = load_nodes
|
150
|
+
Prism::ParseResult.new(node, comments, magic_comments, data_loc, errors, warnings, @source)
|
156
151
|
end
|
157
152
|
|
158
153
|
private
|
159
154
|
|
160
155
|
# variable-length integer using https://en.wikipedia.org/wiki/LEB128
|
161
156
|
# This is also what protobuf uses: https://protobuf.dev/programming-guides/encoding/#varints
|
162
|
-
def
|
157
|
+
def load_varuint
|
163
158
|
n = io.getbyte
|
164
159
|
if n < 128
|
165
160
|
n
|
@@ -173,6 +168,11 @@ module Prism
|
|
173
168
|
end
|
174
169
|
end
|
175
170
|
|
171
|
+
def load_varsint
|
172
|
+
n = load_varuint
|
173
|
+
(n >> 1) ^ (-(n & 1))
|
174
|
+
end
|
175
|
+
|
176
176
|
def load_serialized_length
|
177
177
|
io.read(4).unpack1("L")
|
178
178
|
end
|
@@ -185,14 +185,14 @@ module Prism
|
|
185
185
|
end
|
186
186
|
|
187
187
|
def load_embedded_string
|
188
|
-
io.read(
|
188
|
+
io.read(load_varuint).force_encoding(encoding)
|
189
189
|
end
|
190
190
|
|
191
191
|
def load_string
|
192
192
|
type = io.getbyte
|
193
193
|
case type
|
194
194
|
when 1
|
195
|
-
input.byteslice(
|
195
|
+
input.byteslice(load_varuint, load_varuint).force_encoding(encoding)
|
196
196
|
when 2
|
197
197
|
load_embedded_string
|
198
198
|
else
|
@@ -201,7 +201,7 @@ module Prism
|
|
201
201
|
end
|
202
202
|
|
203
203
|
def load_location
|
204
|
-
Location.new(source,
|
204
|
+
Location.new(source, load_varuint, load_varuint)
|
205
205
|
end
|
206
206
|
|
207
207
|
def load_optional_location
|
@@ -230,11 +230,11 @@ module Prism
|
|
230
230
|
end
|
231
231
|
|
232
232
|
def load_required_constant
|
233
|
-
load_constant(
|
233
|
+
load_constant(load_varuint - 1)
|
234
234
|
end
|
235
235
|
|
236
236
|
def load_optional_constant
|
237
|
-
index =
|
237
|
+
index = load_varuint
|
238
238
|
load_constant(index - 1) if index != 0
|
239
239
|
end
|
240
240
|
|
@@ -253,11 +253,11 @@ module Prism
|
|
253
253
|
when 4 then
|
254
254
|
AndNode.new(load_node, load_node, load_location, location)
|
255
255
|
when 5 then
|
256
|
-
ArgumentsNode.new(Array.new(
|
256
|
+
ArgumentsNode.new(load_varuint, Array.new(load_varuint) { load_node }, location)
|
257
257
|
when 6 then
|
258
|
-
ArrayNode.new(Array.new(
|
258
|
+
ArrayNode.new(load_varuint, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
259
259
|
when 7 then
|
260
|
-
ArrayPatternNode.new(load_optional_node, Array.new(
|
260
|
+
ArrayPatternNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
261
261
|
when 8 then
|
262
262
|
AssocNode.new(load_node, load_optional_node, load_optional_location, location)
|
263
263
|
when 9 then
|
@@ -271,267 +271,275 @@ module Prism
|
|
271
271
|
when 13 then
|
272
272
|
BlockLocalVariableNode.new(load_required_constant, location)
|
273
273
|
when 14 then
|
274
|
-
BlockNode.new(Array.new(
|
274
|
+
BlockNode.new(Array.new(load_varuint) { load_required_constant }, load_varuint, load_optional_node, load_optional_node, load_location, load_location, location)
|
275
275
|
when 15 then
|
276
276
|
BlockParameterNode.new(load_optional_constant, load_optional_location, load_location, location)
|
277
277
|
when 16 then
|
278
|
-
BlockParametersNode.new(load_optional_node, Array.new(
|
278
|
+
BlockParametersNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
279
279
|
when 17 then
|
280
280
|
BreakNode.new(load_optional_node, load_location, location)
|
281
281
|
when 18 then
|
282
|
-
CallAndWriteNode.new(load_optional_node, load_optional_location, load_optional_location,
|
282
|
+
CallAndWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_optional_location, load_required_constant, load_required_constant, load_location, load_node, location)
|
283
283
|
when 19 then
|
284
|
-
CallNode.new(load_optional_node, load_optional_location, load_optional_location, load_optional_location, load_optional_node, load_optional_location, load_optional_node,
|
284
|
+
CallNode.new(load_varuint, load_optional_node, load_optional_location, load_required_constant, load_optional_location, load_optional_location, load_optional_node, load_optional_location, load_optional_node, location)
|
285
285
|
when 20 then
|
286
|
-
CallOperatorWriteNode.new(load_optional_node, load_optional_location, load_optional_location,
|
286
|
+
CallOperatorWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_optional_location, load_required_constant, load_required_constant, load_required_constant, load_location, load_node, location)
|
287
287
|
when 21 then
|
288
|
-
CallOrWriteNode.new(load_optional_node, load_optional_location, load_optional_location,
|
288
|
+
CallOrWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_optional_location, load_required_constant, load_required_constant, load_location, load_node, location)
|
289
289
|
when 22 then
|
290
|
-
|
290
|
+
CallTargetNode.new(load_varuint, load_node, load_location, load_required_constant, load_location, location)
|
291
291
|
when 23 then
|
292
|
-
|
292
|
+
CapturePatternNode.new(load_node, load_node, load_location, location)
|
293
293
|
when 24 then
|
294
|
-
|
294
|
+
CaseMatchNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, load_location, load_location, location)
|
295
295
|
when 25 then
|
296
|
-
|
296
|
+
CaseNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, load_location, load_location, location)
|
297
297
|
when 26 then
|
298
|
-
|
298
|
+
ClassNode.new(Array.new(load_varuint) { load_required_constant }, load_location, load_node, load_optional_location, load_optional_node, load_optional_node, load_location, load_required_constant, location)
|
299
299
|
when 27 then
|
300
|
-
|
300
|
+
ClassVariableAndWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
301
301
|
when 28 then
|
302
|
-
|
302
|
+
ClassVariableOperatorWriteNode.new(load_required_constant, load_location, load_location, load_node, load_required_constant, location)
|
303
303
|
when 29 then
|
304
|
-
|
304
|
+
ClassVariableOrWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
305
305
|
when 30 then
|
306
|
-
|
306
|
+
ClassVariableReadNode.new(load_required_constant, location)
|
307
307
|
when 31 then
|
308
|
-
|
308
|
+
ClassVariableTargetNode.new(load_required_constant, location)
|
309
309
|
when 32 then
|
310
|
-
|
310
|
+
ClassVariableWriteNode.new(load_required_constant, load_location, load_node, load_optional_location, location)
|
311
311
|
when 33 then
|
312
|
-
|
312
|
+
ConstantAndWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
313
313
|
when 34 then
|
314
|
-
|
314
|
+
ConstantOperatorWriteNode.new(load_required_constant, load_location, load_location, load_node, load_required_constant, location)
|
315
315
|
when 35 then
|
316
|
-
|
316
|
+
ConstantOrWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
317
317
|
when 36 then
|
318
|
-
|
318
|
+
ConstantPathAndWriteNode.new(load_node, load_location, load_node, location)
|
319
319
|
when 37 then
|
320
|
-
|
320
|
+
ConstantPathNode.new(load_optional_node, load_node, load_location, location)
|
321
321
|
when 38 then
|
322
|
-
|
322
|
+
ConstantPathOperatorWriteNode.new(load_node, load_location, load_node, load_required_constant, location)
|
323
323
|
when 39 then
|
324
|
-
|
324
|
+
ConstantPathOrWriteNode.new(load_node, load_location, load_node, location)
|
325
325
|
when 40 then
|
326
|
-
|
326
|
+
ConstantPathTargetNode.new(load_optional_node, load_node, load_location, location)
|
327
327
|
when 41 then
|
328
|
-
|
328
|
+
ConstantPathWriteNode.new(load_node, load_location, load_node, location)
|
329
329
|
when 42 then
|
330
|
-
|
330
|
+
ConstantReadNode.new(load_required_constant, location)
|
331
331
|
when 43 then
|
332
|
-
|
333
|
-
DefNode.new(load_required_constant, load_location, load_optional_node, load_optional_node, load_optional_node, Array.new(load_varint) { load_required_constant }, load_location, load_optional_location, load_optional_location, load_optional_location, load_optional_location, load_optional_location, location)
|
332
|
+
ConstantTargetNode.new(load_required_constant, location)
|
334
333
|
when 44 then
|
335
|
-
|
334
|
+
ConstantWriteNode.new(load_required_constant, load_location, load_node, load_location, location)
|
336
335
|
when 45 then
|
337
|
-
|
336
|
+
load_serialized_length
|
337
|
+
DefNode.new(load_required_constant, load_location, load_optional_node, load_optional_node, load_optional_node, Array.new(load_varuint) { load_required_constant }, load_varuint, load_location, load_optional_location, load_optional_location, load_optional_location, load_optional_location, load_optional_location, location)
|
338
338
|
when 46 then
|
339
|
-
|
339
|
+
DefinedNode.new(load_optional_location, load_node, load_optional_location, load_location, location)
|
340
340
|
when 47 then
|
341
|
-
|
341
|
+
ElseNode.new(load_location, load_optional_node, load_optional_location, location)
|
342
342
|
when 48 then
|
343
|
-
|
343
|
+
EmbeddedStatementsNode.new(load_location, load_optional_node, load_location, location)
|
344
344
|
when 49 then
|
345
|
-
|
345
|
+
EmbeddedVariableNode.new(load_location, load_node, location)
|
346
346
|
when 50 then
|
347
|
-
|
347
|
+
EnsureNode.new(load_location, load_optional_node, load_location, location)
|
348
348
|
when 51 then
|
349
|
-
|
349
|
+
FalseNode.new(location)
|
350
350
|
when 52 then
|
351
|
-
|
351
|
+
FindPatternNode.new(load_optional_node, load_node, Array.new(load_varuint) { load_node }, load_node, load_optional_location, load_optional_location, location)
|
352
352
|
when 53 then
|
353
|
-
|
353
|
+
FlipFlopNode.new(load_varuint, load_optional_node, load_optional_node, load_location, location)
|
354
354
|
when 54 then
|
355
|
-
|
355
|
+
FloatNode.new(location)
|
356
356
|
when 55 then
|
357
|
-
|
357
|
+
ForNode.new(load_node, load_node, load_optional_node, load_location, load_location, load_optional_location, load_location, location)
|
358
358
|
when 56 then
|
359
|
-
|
359
|
+
ForwardingArgumentsNode.new(location)
|
360
360
|
when 57 then
|
361
|
-
|
361
|
+
ForwardingParameterNode.new(location)
|
362
362
|
when 58 then
|
363
|
-
|
363
|
+
ForwardingSuperNode.new(load_optional_node, location)
|
364
364
|
when 59 then
|
365
|
-
|
365
|
+
GlobalVariableAndWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
366
366
|
when 60 then
|
367
|
-
|
367
|
+
GlobalVariableOperatorWriteNode.new(load_required_constant, load_location, load_location, load_node, load_required_constant, location)
|
368
368
|
when 61 then
|
369
|
-
|
369
|
+
GlobalVariableOrWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
370
370
|
when 62 then
|
371
|
-
|
371
|
+
GlobalVariableReadNode.new(load_required_constant, location)
|
372
372
|
when 63 then
|
373
|
-
|
373
|
+
GlobalVariableTargetNode.new(load_required_constant, location)
|
374
374
|
when 64 then
|
375
|
-
|
375
|
+
GlobalVariableWriteNode.new(load_required_constant, load_location, load_node, load_location, location)
|
376
376
|
when 65 then
|
377
|
-
|
377
|
+
HashNode.new(load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
378
378
|
when 66 then
|
379
|
-
|
379
|
+
HashPatternNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, load_optional_location, load_optional_location, location)
|
380
380
|
when 67 then
|
381
|
-
|
381
|
+
IfNode.new(load_optional_location, load_node, load_optional_location, load_optional_node, load_optional_node, load_optional_location, location)
|
382
382
|
when 68 then
|
383
|
-
|
383
|
+
ImaginaryNode.new(load_node, location)
|
384
384
|
when 69 then
|
385
|
-
|
385
|
+
ImplicitNode.new(load_node, location)
|
386
386
|
when 70 then
|
387
|
-
|
387
|
+
ImplicitRestNode.new(location)
|
388
388
|
when 71 then
|
389
|
-
|
389
|
+
InNode.new(load_node, load_optional_node, load_location, load_optional_location, location)
|
390
390
|
when 72 then
|
391
|
-
|
391
|
+
IndexAndWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node, load_location, load_node, location)
|
392
392
|
when 73 then
|
393
|
-
|
393
|
+
IndexOperatorWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node, load_required_constant, load_location, load_node, location)
|
394
394
|
when 74 then
|
395
|
-
|
395
|
+
IndexOrWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node, load_location, load_node, location)
|
396
396
|
when 75 then
|
397
|
-
|
397
|
+
IndexTargetNode.new(load_varuint, load_node, load_location, load_optional_node, load_location, load_optional_node, location)
|
398
398
|
when 76 then
|
399
|
-
|
399
|
+
InstanceVariableAndWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
400
400
|
when 77 then
|
401
|
-
|
401
|
+
InstanceVariableOperatorWriteNode.new(load_required_constant, load_location, load_location, load_node, load_required_constant, location)
|
402
402
|
when 78 then
|
403
|
-
|
403
|
+
InstanceVariableOrWriteNode.new(load_required_constant, load_location, load_location, load_node, location)
|
404
404
|
when 79 then
|
405
|
-
|
405
|
+
InstanceVariableReadNode.new(load_required_constant, location)
|
406
406
|
when 80 then
|
407
|
-
|
407
|
+
InstanceVariableTargetNode.new(load_required_constant, location)
|
408
408
|
when 81 then
|
409
|
-
|
409
|
+
InstanceVariableWriteNode.new(load_required_constant, load_location, load_node, load_location, location)
|
410
410
|
when 82 then
|
411
|
-
|
411
|
+
IntegerNode.new(load_varuint, location)
|
412
412
|
when 83 then
|
413
|
-
|
413
|
+
InterpolatedMatchLastLineNode.new(load_varuint, load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
414
414
|
when 84 then
|
415
|
-
|
415
|
+
InterpolatedRegularExpressionNode.new(load_varuint, load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
416
416
|
when 85 then
|
417
|
-
|
417
|
+
InterpolatedStringNode.new(load_optional_location, Array.new(load_varuint) { load_node }, load_optional_location, location)
|
418
418
|
when 86 then
|
419
|
-
|
419
|
+
InterpolatedSymbolNode.new(load_optional_location, Array.new(load_varuint) { load_node }, load_optional_location, location)
|
420
420
|
when 87 then
|
421
|
-
|
421
|
+
InterpolatedXStringNode.new(load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
422
422
|
when 88 then
|
423
|
-
|
423
|
+
KeywordHashNode.new(load_varuint, Array.new(load_varuint) { load_node }, location)
|
424
424
|
when 89 then
|
425
|
-
|
425
|
+
KeywordRestParameterNode.new(load_optional_constant, load_optional_location, load_location, location)
|
426
426
|
when 90 then
|
427
|
-
|
427
|
+
LambdaNode.new(Array.new(load_varuint) { load_required_constant }, load_varuint, load_location, load_location, load_location, load_optional_node, load_optional_node, location)
|
428
428
|
when 91 then
|
429
|
-
|
429
|
+
LocalVariableAndWriteNode.new(load_location, load_location, load_node, load_required_constant, load_varuint, location)
|
430
430
|
when 92 then
|
431
|
-
|
431
|
+
LocalVariableOperatorWriteNode.new(load_location, load_location, load_node, load_required_constant, load_required_constant, load_varuint, location)
|
432
432
|
when 93 then
|
433
|
-
|
433
|
+
LocalVariableOrWriteNode.new(load_location, load_location, load_node, load_required_constant, load_varuint, location)
|
434
434
|
when 94 then
|
435
|
-
|
435
|
+
LocalVariableReadNode.new(load_required_constant, load_varuint, location)
|
436
436
|
when 95 then
|
437
|
-
|
437
|
+
LocalVariableTargetNode.new(load_required_constant, load_varuint, location)
|
438
438
|
when 96 then
|
439
|
-
|
439
|
+
LocalVariableWriteNode.new(load_required_constant, load_varuint, load_location, load_node, load_location, location)
|
440
440
|
when 97 then
|
441
|
-
|
441
|
+
MatchLastLineNode.new(load_varuint, load_location, load_location, load_location, load_string, location)
|
442
442
|
when 98 then
|
443
|
-
|
443
|
+
MatchPredicateNode.new(load_node, load_node, load_location, location)
|
444
444
|
when 99 then
|
445
|
-
|
445
|
+
MatchRequiredNode.new(load_node, load_node, load_location, location)
|
446
446
|
when 100 then
|
447
|
-
|
447
|
+
MatchWriteNode.new(load_node, Array.new(load_varuint) { load_node }, location)
|
448
448
|
when 101 then
|
449
|
-
|
449
|
+
MissingNode.new(location)
|
450
450
|
when 102 then
|
451
|
-
|
451
|
+
ModuleNode.new(Array.new(load_varuint) { load_required_constant }, load_location, load_node, load_optional_node, load_location, load_required_constant, location)
|
452
452
|
when 103 then
|
453
|
-
|
453
|
+
MultiTargetNode.new(Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
454
454
|
when 104 then
|
455
|
-
|
455
|
+
MultiWriteNode.new(Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, load_location, load_node, location)
|
456
456
|
when 105 then
|
457
|
-
|
457
|
+
NextNode.new(load_optional_node, load_location, location)
|
458
458
|
when 106 then
|
459
|
-
|
459
|
+
NilNode.new(location)
|
460
460
|
when 107 then
|
461
|
-
|
461
|
+
NoKeywordsParameterNode.new(load_location, load_location, location)
|
462
462
|
when 108 then
|
463
|
-
|
463
|
+
NumberedParametersNode.new(io.getbyte, location)
|
464
464
|
when 109 then
|
465
|
-
|
465
|
+
NumberedReferenceReadNode.new(load_varuint, location)
|
466
466
|
when 110 then
|
467
|
-
|
467
|
+
OptionalKeywordParameterNode.new(load_required_constant, load_location, load_node, location)
|
468
468
|
when 111 then
|
469
|
-
|
469
|
+
OptionalParameterNode.new(load_required_constant, load_location, load_location, load_node, location)
|
470
470
|
when 112 then
|
471
|
-
|
471
|
+
OrNode.new(load_node, load_node, load_location, location)
|
472
472
|
when 113 then
|
473
|
-
|
473
|
+
ParametersNode.new(Array.new(load_varuint) { load_node }, Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, Array.new(load_varuint) { load_node }, load_optional_node, load_optional_node, location)
|
474
474
|
when 114 then
|
475
|
-
|
475
|
+
ParenthesesNode.new(load_optional_node, load_location, load_location, location)
|
476
476
|
when 115 then
|
477
|
-
|
477
|
+
PinnedExpressionNode.new(load_node, load_location, load_location, load_location, location)
|
478
478
|
when 116 then
|
479
|
-
|
479
|
+
PinnedVariableNode.new(load_node, load_location, location)
|
480
480
|
when 117 then
|
481
|
-
|
481
|
+
PostExecutionNode.new(load_optional_node, load_location, load_location, load_location, location)
|
482
482
|
when 118 then
|
483
|
-
|
483
|
+
PreExecutionNode.new(load_optional_node, load_location, load_location, load_location, location)
|
484
484
|
when 119 then
|
485
|
-
|
485
|
+
ProgramNode.new(Array.new(load_varuint) { load_required_constant }, load_node, location)
|
486
486
|
when 120 then
|
487
|
-
|
487
|
+
RangeNode.new(load_varuint, load_optional_node, load_optional_node, load_location, location)
|
488
488
|
when 121 then
|
489
|
-
|
489
|
+
RationalNode.new(load_node, location)
|
490
490
|
when 122 then
|
491
|
-
|
491
|
+
RedoNode.new(location)
|
492
492
|
when 123 then
|
493
|
-
|
493
|
+
RegularExpressionNode.new(load_varuint, load_location, load_location, load_location, load_string, location)
|
494
494
|
when 124 then
|
495
|
-
|
495
|
+
RequiredKeywordParameterNode.new(load_required_constant, load_location, location)
|
496
496
|
when 125 then
|
497
|
-
|
497
|
+
RequiredParameterNode.new(load_required_constant, location)
|
498
498
|
when 126 then
|
499
|
-
|
499
|
+
RescueModifierNode.new(load_node, load_location, load_node, location)
|
500
500
|
when 127 then
|
501
|
-
|
501
|
+
RescueNode.new(load_location, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_node, load_optional_node, load_optional_node, location)
|
502
502
|
when 128 then
|
503
|
-
|
503
|
+
RestParameterNode.new(load_optional_constant, load_optional_location, load_location, location)
|
504
504
|
when 129 then
|
505
|
-
|
505
|
+
RetryNode.new(location)
|
506
506
|
when 130 then
|
507
|
-
|
507
|
+
ReturnNode.new(load_location, load_optional_node, location)
|
508
508
|
when 131 then
|
509
|
-
|
509
|
+
SelfNode.new(location)
|
510
510
|
when 132 then
|
511
|
-
|
511
|
+
SingletonClassNode.new(Array.new(load_varuint) { load_required_constant }, load_location, load_location, load_node, load_optional_node, load_location, location)
|
512
512
|
when 133 then
|
513
|
-
|
513
|
+
SourceEncodingNode.new(location)
|
514
514
|
when 134 then
|
515
|
-
|
515
|
+
SourceFileNode.new(load_string, location)
|
516
516
|
when 135 then
|
517
|
-
|
517
|
+
SourceLineNode.new(location)
|
518
518
|
when 136 then
|
519
|
-
|
519
|
+
SplatNode.new(load_location, load_optional_node, location)
|
520
520
|
when 137 then
|
521
|
-
|
521
|
+
StatementsNode.new(Array.new(load_varuint) { load_node }, location)
|
522
522
|
when 138 then
|
523
|
-
|
523
|
+
StringNode.new(load_varuint, load_optional_location, load_location, load_optional_location, load_string, location)
|
524
524
|
when 139 then
|
525
|
-
|
525
|
+
SuperNode.new(load_location, load_optional_location, load_optional_node, load_optional_location, load_optional_node, location)
|
526
526
|
when 140 then
|
527
|
-
|
527
|
+
SymbolNode.new(load_varuint, load_optional_location, load_optional_location, load_optional_location, load_string, location)
|
528
528
|
when 141 then
|
529
|
-
|
529
|
+
TrueNode.new(location)
|
530
530
|
when 142 then
|
531
|
-
|
531
|
+
UndefNode.new(Array.new(load_varuint) { load_node }, load_location, location)
|
532
532
|
when 143 then
|
533
|
-
|
533
|
+
UnlessNode.new(load_location, load_node, load_optional_location, load_optional_node, load_optional_node, load_optional_location, location)
|
534
534
|
when 144 then
|
535
|
+
UntilNode.new(load_varuint, load_location, load_optional_location, load_node, load_optional_node, location)
|
536
|
+
when 145 then
|
537
|
+
WhenNode.new(load_location, Array.new(load_varuint) { load_node }, load_optional_node, location)
|
538
|
+
when 146 then
|
539
|
+
WhileNode.new(load_varuint, load_location, load_optional_location, load_node, load_optional_node, location)
|
540
|
+
when 147 then
|
541
|
+
XStringNode.new(load_varuint, load_location, load_location, load_location, load_string, location)
|
542
|
+
when 148 then
|
535
543
|
YieldNode.new(load_location, load_optional_location, load_optional_node, load_optional_location, location)
|
536
544
|
end
|
537
545
|
end
|
@@ -562,15 +570,15 @@ module Prism
|
|
562
570
|
},
|
563
571
|
-> {
|
564
572
|
location = load_location
|
565
|
-
ArgumentsNode.new(Array.new(
|
573
|
+
ArgumentsNode.new(load_varuint, Array.new(load_varuint) { load_node }, location)
|
566
574
|
},
|
567
575
|
-> {
|
568
576
|
location = load_location
|
569
|
-
ArrayNode.new(Array.new(
|
577
|
+
ArrayNode.new(load_varuint, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
570
578
|
},
|
571
579
|
-> {
|
572
580
|
location = load_location
|
573
|
-
ArrayPatternNode.new(load_optional_node, Array.new(
|
581
|
+
ArrayPatternNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
574
582
|
},
|
575
583
|
-> {
|
576
584
|
location = load_location
|
@@ -598,7 +606,7 @@ module Prism
|
|
598
606
|
},
|
599
607
|
-> {
|
600
608
|
location = load_location
|
601
|
-
BlockNode.new(Array.new(
|
609
|
+
BlockNode.new(Array.new(load_varuint) { load_required_constant }, load_varuint, load_optional_node, load_optional_node, load_location, load_location, location)
|
602
610
|
},
|
603
611
|
-> {
|
604
612
|
location = load_location
|
@@ -606,7 +614,7 @@ module Prism
|
|
606
614
|
},
|
607
615
|
-> {
|
608
616
|
location = load_location
|
609
|
-
BlockParametersNode.new(load_optional_node, Array.new(
|
617
|
+
BlockParametersNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
610
618
|
},
|
611
619
|
-> {
|
612
620
|
location = load_location
|
@@ -614,19 +622,23 @@ module Prism
|
|
614
622
|
},
|
615
623
|
-> {
|
616
624
|
location = load_location
|
617
|
-
CallAndWriteNode.new(load_optional_node, load_optional_location, load_optional_location,
|
625
|
+
CallAndWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_optional_location, load_required_constant, load_required_constant, load_location, load_node, location)
|
618
626
|
},
|
619
627
|
-> {
|
620
628
|
location = load_location
|
621
|
-
CallNode.new(load_optional_node, load_optional_location, load_optional_location, load_optional_location, load_optional_node, load_optional_location, load_optional_node,
|
629
|
+
CallNode.new(load_varuint, load_optional_node, load_optional_location, load_required_constant, load_optional_location, load_optional_location, load_optional_node, load_optional_location, load_optional_node, location)
|
622
630
|
},
|
623
631
|
-> {
|
624
632
|
location = load_location
|
625
|
-
CallOperatorWriteNode.new(load_optional_node, load_optional_location, load_optional_location,
|
633
|
+
CallOperatorWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_optional_location, load_required_constant, load_required_constant, load_required_constant, load_location, load_node, location)
|
626
634
|
},
|
627
635
|
-> {
|
628
636
|
location = load_location
|
629
|
-
CallOrWriteNode.new(load_optional_node, load_optional_location, load_optional_location,
|
637
|
+
CallOrWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_optional_location, load_required_constant, load_required_constant, load_location, load_node, location)
|
638
|
+
},
|
639
|
+
-> {
|
640
|
+
location = load_location
|
641
|
+
CallTargetNode.new(load_varuint, load_node, load_location, load_required_constant, load_location, location)
|
630
642
|
},
|
631
643
|
-> {
|
632
644
|
location = load_location
|
@@ -634,11 +646,15 @@ module Prism
|
|
634
646
|
},
|
635
647
|
-> {
|
636
648
|
location = load_location
|
637
|
-
|
649
|
+
CaseMatchNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, load_location, load_location, location)
|
638
650
|
},
|
639
651
|
-> {
|
640
652
|
location = load_location
|
641
|
-
|
653
|
+
CaseNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, load_location, load_location, location)
|
654
|
+
},
|
655
|
+
-> {
|
656
|
+
location = load_location
|
657
|
+
ClassNode.new(Array.new(load_varuint) { load_required_constant }, load_location, load_node, load_optional_location, load_optional_node, load_optional_node, load_location, load_required_constant, location)
|
642
658
|
},
|
643
659
|
-> {
|
644
660
|
location = load_location
|
@@ -715,7 +731,7 @@ module Prism
|
|
715
731
|
-> {
|
716
732
|
location = load_location
|
717
733
|
load_serialized_length
|
718
|
-
DefNode.new(load_required_constant, load_location, load_optional_node, load_optional_node, load_optional_node, Array.new(
|
734
|
+
DefNode.new(load_required_constant, load_location, load_optional_node, load_optional_node, load_optional_node, Array.new(load_varuint) { load_required_constant }, load_varuint, load_location, load_optional_location, load_optional_location, load_optional_location, load_optional_location, load_optional_location, location)
|
719
735
|
},
|
720
736
|
-> {
|
721
737
|
location = load_location
|
@@ -743,11 +759,11 @@ module Prism
|
|
743
759
|
},
|
744
760
|
-> {
|
745
761
|
location = load_location
|
746
|
-
FindPatternNode.new(load_optional_node, load_node, Array.new(
|
762
|
+
FindPatternNode.new(load_optional_node, load_node, Array.new(load_varuint) { load_node }, load_node, load_optional_location, load_optional_location, location)
|
747
763
|
},
|
748
764
|
-> {
|
749
765
|
location = load_location
|
750
|
-
FlipFlopNode.new(load_optional_node, load_optional_node, load_location,
|
766
|
+
FlipFlopNode.new(load_varuint, load_optional_node, load_optional_node, load_location, location)
|
751
767
|
},
|
752
768
|
-> {
|
753
769
|
location = load_location
|
@@ -795,15 +811,15 @@ module Prism
|
|
795
811
|
},
|
796
812
|
-> {
|
797
813
|
location = load_location
|
798
|
-
HashNode.new(load_location, Array.new(
|
814
|
+
HashNode.new(load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
799
815
|
},
|
800
816
|
-> {
|
801
817
|
location = load_location
|
802
|
-
HashPatternNode.new(load_optional_node, Array.new(
|
818
|
+
HashPatternNode.new(load_optional_node, Array.new(load_varuint) { load_node }, load_optional_node, load_optional_location, load_optional_location, location)
|
803
819
|
},
|
804
820
|
-> {
|
805
821
|
location = load_location
|
806
|
-
IfNode.new(load_optional_location, load_node, load_optional_node, load_optional_node, load_optional_location, location)
|
822
|
+
IfNode.new(load_optional_location, load_node, load_optional_location, load_optional_node, load_optional_node, load_optional_location, location)
|
807
823
|
},
|
808
824
|
-> {
|
809
825
|
location = load_location
|
@@ -813,21 +829,29 @@ module Prism
|
|
813
829
|
location = load_location
|
814
830
|
ImplicitNode.new(load_node, location)
|
815
831
|
},
|
832
|
+
-> {
|
833
|
+
location = load_location
|
834
|
+
ImplicitRestNode.new(location)
|
835
|
+
},
|
816
836
|
-> {
|
817
837
|
location = load_location
|
818
838
|
InNode.new(load_node, load_optional_node, load_location, load_optional_location, location)
|
819
839
|
},
|
820
840
|
-> {
|
821
841
|
location = load_location
|
822
|
-
IndexAndWriteNode.new(load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node,
|
842
|
+
IndexAndWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node, load_location, load_node, location)
|
843
|
+
},
|
844
|
+
-> {
|
845
|
+
location = load_location
|
846
|
+
IndexOperatorWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node, load_required_constant, load_location, load_node, location)
|
823
847
|
},
|
824
848
|
-> {
|
825
849
|
location = load_location
|
826
|
-
|
850
|
+
IndexOrWriteNode.new(load_varuint, load_optional_node, load_optional_location, load_location, load_optional_node, load_location, load_optional_node, load_location, load_node, location)
|
827
851
|
},
|
828
852
|
-> {
|
829
853
|
location = load_location
|
830
|
-
|
854
|
+
IndexTargetNode.new(load_varuint, load_node, load_location, load_optional_node, load_location, load_optional_node, location)
|
831
855
|
},
|
832
856
|
-> {
|
833
857
|
location = load_location
|
@@ -855,31 +879,31 @@ module Prism
|
|
855
879
|
},
|
856
880
|
-> {
|
857
881
|
location = load_location
|
858
|
-
IntegerNode.new(
|
882
|
+
IntegerNode.new(load_varuint, location)
|
859
883
|
},
|
860
884
|
-> {
|
861
885
|
location = load_location
|
862
|
-
InterpolatedMatchLastLineNode.new(load_location, Array.new(
|
886
|
+
InterpolatedMatchLastLineNode.new(load_varuint, load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
863
887
|
},
|
864
888
|
-> {
|
865
889
|
location = load_location
|
866
|
-
InterpolatedRegularExpressionNode.new(load_location, Array.new(
|
890
|
+
InterpolatedRegularExpressionNode.new(load_varuint, load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
867
891
|
},
|
868
892
|
-> {
|
869
893
|
location = load_location
|
870
|
-
InterpolatedStringNode.new(load_optional_location, Array.new(
|
894
|
+
InterpolatedStringNode.new(load_optional_location, Array.new(load_varuint) { load_node }, load_optional_location, location)
|
871
895
|
},
|
872
896
|
-> {
|
873
897
|
location = load_location
|
874
|
-
InterpolatedSymbolNode.new(load_optional_location, Array.new(
|
898
|
+
InterpolatedSymbolNode.new(load_optional_location, Array.new(load_varuint) { load_node }, load_optional_location, location)
|
875
899
|
},
|
876
900
|
-> {
|
877
901
|
location = load_location
|
878
|
-
InterpolatedXStringNode.new(load_location, Array.new(
|
902
|
+
InterpolatedXStringNode.new(load_location, Array.new(load_varuint) { load_node }, load_location, location)
|
879
903
|
},
|
880
904
|
-> {
|
881
905
|
location = load_location
|
882
|
-
KeywordHashNode.new(Array.new(
|
906
|
+
KeywordHashNode.new(load_varuint, Array.new(load_varuint) { load_node }, location)
|
883
907
|
},
|
884
908
|
-> {
|
885
909
|
location = load_location
|
@@ -887,35 +911,35 @@ module Prism
|
|
887
911
|
},
|
888
912
|
-> {
|
889
913
|
location = load_location
|
890
|
-
LambdaNode.new(Array.new(
|
914
|
+
LambdaNode.new(Array.new(load_varuint) { load_required_constant }, load_varuint, load_location, load_location, load_location, load_optional_node, load_optional_node, location)
|
891
915
|
},
|
892
916
|
-> {
|
893
917
|
location = load_location
|
894
|
-
LocalVariableAndWriteNode.new(load_location, load_location, load_node, load_required_constant,
|
918
|
+
LocalVariableAndWriteNode.new(load_location, load_location, load_node, load_required_constant, load_varuint, location)
|
895
919
|
},
|
896
920
|
-> {
|
897
921
|
location = load_location
|
898
|
-
LocalVariableOperatorWriteNode.new(load_location, load_location, load_node, load_required_constant, load_required_constant,
|
922
|
+
LocalVariableOperatorWriteNode.new(load_location, load_location, load_node, load_required_constant, load_required_constant, load_varuint, location)
|
899
923
|
},
|
900
924
|
-> {
|
901
925
|
location = load_location
|
902
|
-
LocalVariableOrWriteNode.new(load_location, load_location, load_node, load_required_constant,
|
926
|
+
LocalVariableOrWriteNode.new(load_location, load_location, load_node, load_required_constant, load_varuint, location)
|
903
927
|
},
|
904
928
|
-> {
|
905
929
|
location = load_location
|
906
|
-
LocalVariableReadNode.new(load_required_constant,
|
930
|
+
LocalVariableReadNode.new(load_required_constant, load_varuint, location)
|
907
931
|
},
|
908
932
|
-> {
|
909
933
|
location = load_location
|
910
|
-
LocalVariableTargetNode.new(load_required_constant,
|
934
|
+
LocalVariableTargetNode.new(load_required_constant, load_varuint, location)
|
911
935
|
},
|
912
936
|
-> {
|
913
937
|
location = load_location
|
914
|
-
LocalVariableWriteNode.new(load_required_constant,
|
938
|
+
LocalVariableWriteNode.new(load_required_constant, load_varuint, load_location, load_node, load_location, location)
|
915
939
|
},
|
916
940
|
-> {
|
917
941
|
location = load_location
|
918
|
-
MatchLastLineNode.new(load_location, load_location, load_location, load_string,
|
942
|
+
MatchLastLineNode.new(load_varuint, load_location, load_location, load_location, load_string, location)
|
919
943
|
},
|
920
944
|
-> {
|
921
945
|
location = load_location
|
@@ -927,7 +951,7 @@ module Prism
|
|
927
951
|
},
|
928
952
|
-> {
|
929
953
|
location = load_location
|
930
|
-
MatchWriteNode.new(load_node, Array.new(
|
954
|
+
MatchWriteNode.new(load_node, Array.new(load_varuint) { load_node }, location)
|
931
955
|
},
|
932
956
|
-> {
|
933
957
|
location = load_location
|
@@ -935,15 +959,15 @@ module Prism
|
|
935
959
|
},
|
936
960
|
-> {
|
937
961
|
location = load_location
|
938
|
-
ModuleNode.new(Array.new(
|
962
|
+
ModuleNode.new(Array.new(load_varuint) { load_required_constant }, load_location, load_node, load_optional_node, load_location, load_required_constant, location)
|
939
963
|
},
|
940
964
|
-> {
|
941
965
|
location = load_location
|
942
|
-
MultiTargetNode.new(Array.new(
|
966
|
+
MultiTargetNode.new(Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, location)
|
943
967
|
},
|
944
968
|
-> {
|
945
969
|
location = load_location
|
946
|
-
MultiWriteNode.new(Array.new(
|
970
|
+
MultiWriteNode.new(Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_location, load_location, load_node, location)
|
947
971
|
},
|
948
972
|
-> {
|
949
973
|
location = load_location
|
@@ -959,7 +983,11 @@ module Prism
|
|
959
983
|
},
|
960
984
|
-> {
|
961
985
|
location = load_location
|
962
|
-
|
986
|
+
NumberedParametersNode.new(io.getbyte, location)
|
987
|
+
},
|
988
|
+
-> {
|
989
|
+
location = load_location
|
990
|
+
NumberedReferenceReadNode.new(load_varuint, location)
|
963
991
|
},
|
964
992
|
-> {
|
965
993
|
location = load_location
|
@@ -975,7 +1003,7 @@ module Prism
|
|
975
1003
|
},
|
976
1004
|
-> {
|
977
1005
|
location = load_location
|
978
|
-
ParametersNode.new(Array.new(
|
1006
|
+
ParametersNode.new(Array.new(load_varuint) { load_node }, Array.new(load_varuint) { load_node }, load_optional_node, Array.new(load_varuint) { load_node }, Array.new(load_varuint) { load_node }, load_optional_node, load_optional_node, location)
|
979
1007
|
},
|
980
1008
|
-> {
|
981
1009
|
location = load_location
|
@@ -999,11 +1027,11 @@ module Prism
|
|
999
1027
|
},
|
1000
1028
|
-> {
|
1001
1029
|
location = load_location
|
1002
|
-
ProgramNode.new(Array.new(
|
1030
|
+
ProgramNode.new(Array.new(load_varuint) { load_required_constant }, load_node, location)
|
1003
1031
|
},
|
1004
1032
|
-> {
|
1005
1033
|
location = load_location
|
1006
|
-
RangeNode.new(load_optional_node, load_optional_node, load_location,
|
1034
|
+
RangeNode.new(load_varuint, load_optional_node, load_optional_node, load_location, location)
|
1007
1035
|
},
|
1008
1036
|
-> {
|
1009
1037
|
location = load_location
|
@@ -1015,7 +1043,7 @@ module Prism
|
|
1015
1043
|
},
|
1016
1044
|
-> {
|
1017
1045
|
location = load_location
|
1018
|
-
RegularExpressionNode.new(load_location, load_location, load_location, load_string,
|
1046
|
+
RegularExpressionNode.new(load_varuint, load_location, load_location, load_location, load_string, location)
|
1019
1047
|
},
|
1020
1048
|
-> {
|
1021
1049
|
location = load_location
|
@@ -1031,7 +1059,7 @@ module Prism
|
|
1031
1059
|
},
|
1032
1060
|
-> {
|
1033
1061
|
location = load_location
|
1034
|
-
RescueNode.new(load_location, Array.new(
|
1062
|
+
RescueNode.new(load_location, Array.new(load_varuint) { load_node }, load_optional_location, load_optional_node, load_optional_node, load_optional_node, location)
|
1035
1063
|
},
|
1036
1064
|
-> {
|
1037
1065
|
location = load_location
|
@@ -1051,7 +1079,7 @@ module Prism
|
|
1051
1079
|
},
|
1052
1080
|
-> {
|
1053
1081
|
location = load_location
|
1054
|
-
SingletonClassNode.new(Array.new(
|
1082
|
+
SingletonClassNode.new(Array.new(load_varuint) { load_required_constant }, load_location, load_location, load_node, load_optional_node, load_location, location)
|
1055
1083
|
},
|
1056
1084
|
-> {
|
1057
1085
|
location = load_location
|
@@ -1071,15 +1099,11 @@ module Prism
|
|
1071
1099
|
},
|
1072
1100
|
-> {
|
1073
1101
|
location = load_location
|
1074
|
-
StatementsNode.new(Array.new(
|
1075
|
-
},
|
1076
|
-
-> {
|
1077
|
-
location = load_location
|
1078
|
-
StringConcatNode.new(load_node, load_node, location)
|
1102
|
+
StatementsNode.new(Array.new(load_varuint) { load_node }, location)
|
1079
1103
|
},
|
1080
1104
|
-> {
|
1081
1105
|
location = load_location
|
1082
|
-
StringNode.new(
|
1106
|
+
StringNode.new(load_varuint, load_optional_location, load_location, load_optional_location, load_string, location)
|
1083
1107
|
},
|
1084
1108
|
-> {
|
1085
1109
|
location = load_location
|
@@ -1087,7 +1111,7 @@ module Prism
|
|
1087
1111
|
},
|
1088
1112
|
-> {
|
1089
1113
|
location = load_location
|
1090
|
-
SymbolNode.new(load_optional_location, load_optional_location, load_optional_location, load_string, location)
|
1114
|
+
SymbolNode.new(load_varuint, load_optional_location, load_optional_location, load_optional_location, load_string, location)
|
1091
1115
|
},
|
1092
1116
|
-> {
|
1093
1117
|
location = load_location
|
@@ -1095,27 +1119,27 @@ module Prism
|
|
1095
1119
|
},
|
1096
1120
|
-> {
|
1097
1121
|
location = load_location
|
1098
|
-
UndefNode.new(Array.new(
|
1122
|
+
UndefNode.new(Array.new(load_varuint) { load_node }, load_location, location)
|
1099
1123
|
},
|
1100
1124
|
-> {
|
1101
1125
|
location = load_location
|
1102
|
-
UnlessNode.new(load_location, load_node, load_optional_node, load_optional_node, load_optional_location, location)
|
1126
|
+
UnlessNode.new(load_location, load_node, load_optional_location, load_optional_node, load_optional_node, load_optional_location, location)
|
1103
1127
|
},
|
1104
1128
|
-> {
|
1105
1129
|
location = load_location
|
1106
|
-
UntilNode.new(load_location, load_optional_location, load_node, load_optional_node,
|
1130
|
+
UntilNode.new(load_varuint, load_location, load_optional_location, load_node, load_optional_node, location)
|
1107
1131
|
},
|
1108
1132
|
-> {
|
1109
1133
|
location = load_location
|
1110
|
-
WhenNode.new(load_location, Array.new(
|
1134
|
+
WhenNode.new(load_location, Array.new(load_varuint) { load_node }, load_optional_node, location)
|
1111
1135
|
},
|
1112
1136
|
-> {
|
1113
1137
|
location = load_location
|
1114
|
-
WhileNode.new(load_location, load_optional_location, load_node, load_optional_node,
|
1138
|
+
WhileNode.new(load_varuint, load_location, load_optional_location, load_node, load_optional_node, location)
|
1115
1139
|
},
|
1116
1140
|
-> {
|
1117
1141
|
location = load_location
|
1118
|
-
XStringNode.new(load_location, load_location, load_location, load_string, location)
|
1142
|
+
XStringNode.new(load_varuint, load_location, load_location, load_location, load_string, location)
|
1119
1143
|
},
|
1120
1144
|
-> {
|
1121
1145
|
location = load_location
|