prism 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +26 -1
- data/README.md +1 -0
- data/config.yml +257 -20
- data/docs/parsing_rules.md +4 -1
- data/ext/prism/extension.c +63 -26
- data/ext/prism/extension.h +1 -1
- data/include/prism/ast.h +559 -327
- data/include/prism/defines.h +27 -0
- data/include/prism/diagnostic.h +5 -1
- data/include/prism/options.h +39 -2
- data/include/prism/parser.h +7 -0
- data/include/prism/util/pm_string.h +27 -4
- data/include/prism/version.h +2 -2
- data/lib/prism/dot_visitor.rb +2 -0
- data/lib/prism/dsl.rb +10 -8
- data/lib/prism/ffi.rb +37 -3
- data/lib/prism/inspect_visitor.rb +1 -1
- data/lib/prism/lex_compat.rb +1 -1
- data/lib/prism/node.rb +132 -89
- data/lib/prism/parse_result.rb +1 -1
- data/lib/prism/reflection.rb +1 -1
- data/lib/prism/serialize.rb +6 -2
- data/lib/prism/translation/parser/lexer.rb +25 -3
- data/lib/prism/translation/ruby_parser.rb +7 -1
- data/prism.gemspec +1 -2
- data/rbi/prism/dsl.rbi +32 -32
- data/rbi/prism/node.rbi +69 -59
- data/rbi/prism.rbi +34 -34
- data/sig/prism/dsl.rbs +24 -24
- data/sig/prism/node.rbs +113 -105
- data/sig/prism.rbs +90 -72
- data/src/diagnostic.c +15 -7
- data/src/node.c +10 -0
- data/src/options.c +58 -27
- data/src/prettyprint.c +10 -0
- data/src/prism.c +588 -385
- data/src/util/pm_string.c +123 -65
- metadata +2 -3
- data/lib/prism/translation/parser/rubocop.rb +0 -73
data/lib/prism/node.rb
CHANGED
@@ -370,10 +370,28 @@ module Prism
|
|
370
370
|
{ node_id: node_id, location: location, new_name: new_name, old_name: old_name, keyword_loc: keyword_loc }
|
371
371
|
end
|
372
372
|
|
373
|
-
#
|
373
|
+
# Represents the new name of the method that will be aliased.
|
374
|
+
#
|
375
|
+
# alias foo bar
|
376
|
+
# ^^^
|
377
|
+
#
|
378
|
+
# alias :foo :bar
|
379
|
+
# ^^^^
|
380
|
+
#
|
381
|
+
# alias :"#{foo}" :"#{bar}"
|
382
|
+
# ^^^^^^^^^
|
374
383
|
attr_reader :new_name
|
375
384
|
|
376
|
-
#
|
385
|
+
# Represents the old name of the method that will be aliased.
|
386
|
+
#
|
387
|
+
# alias foo bar
|
388
|
+
# ^^^
|
389
|
+
#
|
390
|
+
# alias :foo :bar
|
391
|
+
# ^^^^
|
392
|
+
#
|
393
|
+
# alias :"#{foo}" :"#{bar}"
|
394
|
+
# ^^^^^^^^^
|
377
395
|
attr_reader :old_name
|
378
396
|
|
379
397
|
# attr_reader keyword_loc: Location
|
@@ -462,13 +480,22 @@ module Prism
|
|
462
480
|
{ node_id: node_id, location: location, left: left, right: right, operator_loc: operator_loc }
|
463
481
|
end
|
464
482
|
|
465
|
-
#
|
483
|
+
# Represents the left side of the expression.
|
484
|
+
#
|
485
|
+
# foo => bar | baz
|
486
|
+
# ^^^
|
466
487
|
attr_reader :left
|
467
488
|
|
468
|
-
#
|
489
|
+
# Represents the right side of the expression.
|
490
|
+
#
|
491
|
+
# foo => bar | baz
|
492
|
+
# ^^^
|
469
493
|
attr_reader :right
|
470
494
|
|
471
|
-
#
|
495
|
+
# Represents the alternation operator location.
|
496
|
+
#
|
497
|
+
# foo => bar | baz
|
498
|
+
# ^
|
472
499
|
def operator_loc
|
473
500
|
location = @operator_loc
|
474
501
|
return location if location.is_a?(Location)
|
@@ -563,7 +590,7 @@ module Prism
|
|
563
590
|
# ^
|
564
591
|
attr_reader :left
|
565
592
|
|
566
|
-
# Represents the right side of the expression.
|
593
|
+
# Represents the right side of the expression.
|
567
594
|
#
|
568
595
|
# left && right
|
569
596
|
# ^^^^^
|
@@ -659,6 +686,11 @@ module Prism
|
|
659
686
|
{ node_id: node_id, location: location, arguments: arguments }
|
660
687
|
end
|
661
688
|
|
689
|
+
# def contains_forwarding?: () -> bool
|
690
|
+
def contains_forwarding?
|
691
|
+
flags.anybits?(ArgumentsNodeFlags::CONTAINS_FORWARDING)
|
692
|
+
end
|
693
|
+
|
662
694
|
# def contains_keywords?: () -> bool
|
663
695
|
def contains_keywords?
|
664
696
|
flags.anybits?(ArgumentsNodeFlags::CONTAINS_KEYWORDS)
|
@@ -674,6 +706,11 @@ module Prism
|
|
674
706
|
flags.anybits?(ArgumentsNodeFlags::CONTAINS_SPLAT)
|
675
707
|
end
|
676
708
|
|
709
|
+
# def contains_multiple_splats?: () -> bool
|
710
|
+
def contains_multiple_splats?
|
711
|
+
flags.anybits?(ArgumentsNodeFlags::CONTAINS_MULTIPLE_SPLATS)
|
712
|
+
end
|
713
|
+
|
677
714
|
# attr_reader arguments: Array[Prism::node]
|
678
715
|
attr_reader :arguments
|
679
716
|
|
@@ -888,7 +925,7 @@ module Prism
|
|
888
925
|
[*constant, *requireds, *rest, *posts, *opening_loc, *closing_loc] #: Array[Prism::node | Location]
|
889
926
|
end
|
890
927
|
|
891
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant:
|
928
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant: ConstantReadNode | ConstantPathNode | nil, ?requireds: Array[Prism::node], ?rest: Prism::node?, ?posts: Array[Prism::node], ?opening_loc: Location?, ?closing_loc: Location?) -> ArrayPatternNode
|
892
929
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, constant: self.constant, requireds: self.requireds, rest: self.rest, posts: self.posts, opening_loc: self.opening_loc, closing_loc: self.closing_loc)
|
893
930
|
ArrayPatternNode.new(source, node_id, location, flags, constant, requireds, rest, posts, opening_loc, closing_loc)
|
894
931
|
end
|
@@ -896,12 +933,12 @@ module Prism
|
|
896
933
|
# def deconstruct: () -> Array[nil | Node]
|
897
934
|
alias deconstruct child_nodes
|
898
935
|
|
899
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant:
|
936
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant: ConstantReadNode | ConstantPathNode | nil, requireds: Array[Prism::node], rest: Prism::node?, posts: Array[Prism::node], opening_loc: Location?, closing_loc: Location? }
|
900
937
|
def deconstruct_keys(keys)
|
901
938
|
{ node_id: node_id, location: location, constant: constant, requireds: requireds, rest: rest, posts: posts, opening_loc: opening_loc, closing_loc: closing_loc }
|
902
939
|
end
|
903
940
|
|
904
|
-
# attr_reader constant:
|
941
|
+
# attr_reader constant: ConstantReadNode | ConstantPathNode | nil
|
905
942
|
attr_reader :constant
|
906
943
|
|
907
944
|
# attr_reader requireds: Array[Prism::node]
|
@@ -2241,7 +2278,7 @@ module Prism
|
|
2241
2278
|
[*receiver, *call_operator_loc, *message_loc, *opening_loc, *arguments, *closing_loc, *block] #: Array[Prism::node | Location]
|
2242
2279
|
end
|
2243
2280
|
|
2244
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?name: Symbol, ?message_loc: Location?, ?opening_loc: Location?, ?arguments: ArgumentsNode?, ?closing_loc: Location?, ?block:
|
2281
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?name: Symbol, ?message_loc: Location?, ?opening_loc: Location?, ?arguments: ArgumentsNode?, ?closing_loc: Location?, ?block: BlockNode | BlockArgumentNode | nil) -> CallNode
|
2245
2282
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, name: self.name, message_loc: self.message_loc, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block)
|
2246
2283
|
CallNode.new(source, node_id, location, flags, receiver, call_operator_loc, name, message_loc, opening_loc, arguments, closing_loc, block)
|
2247
2284
|
end
|
@@ -2249,7 +2286,7 @@ module Prism
|
|
2249
2286
|
# def deconstruct: () -> Array[nil | Node]
|
2250
2287
|
alias deconstruct child_nodes
|
2251
2288
|
|
2252
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, name: Symbol, message_loc: Location?, opening_loc: Location?, arguments: ArgumentsNode?, closing_loc: Location?, block:
|
2289
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, name: Symbol, message_loc: Location?, opening_loc: Location?, arguments: ArgumentsNode?, closing_loc: Location?, block: BlockNode | BlockArgumentNode | nil }
|
2253
2290
|
def deconstruct_keys(keys)
|
2254
2291
|
{ node_id: node_id, location: location, receiver: receiver, call_operator_loc: call_operator_loc, name: name, message_loc: message_loc, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block }
|
2255
2292
|
end
|
@@ -2344,7 +2381,7 @@ module Prism
|
|
2344
2381
|
end
|
2345
2382
|
end
|
2346
2383
|
|
2347
|
-
# attr_reader block:
|
2384
|
+
# attr_reader block: BlockNode | BlockArgumentNode | nil
|
2348
2385
|
attr_reader :block
|
2349
2386
|
|
2350
2387
|
# def call_operator: () -> String?
|
@@ -2901,7 +2938,7 @@ module Prism
|
|
2901
2938
|
[value, target, operator_loc] #: Array[Prism::node | Location]
|
2902
2939
|
end
|
2903
2940
|
|
2904
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node, ?target:
|
2941
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: Prism::node, ?target: LocalVariableTargetNode, ?operator_loc: Location) -> CapturePatternNode
|
2905
2942
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, value: self.value, target: self.target, operator_loc: self.operator_loc)
|
2906
2943
|
CapturePatternNode.new(source, node_id, location, flags, value, target, operator_loc)
|
2907
2944
|
end
|
@@ -2909,7 +2946,7 @@ module Prism
|
|
2909
2946
|
# def deconstruct: () -> Array[nil | Node]
|
2910
2947
|
alias deconstruct child_nodes
|
2911
2948
|
|
2912
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node, target:
|
2949
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: Prism::node, target: LocalVariableTargetNode, operator_loc: Location }
|
2913
2950
|
def deconstruct_keys(keys)
|
2914
2951
|
{ node_id: node_id, location: location, value: value, target: target, operator_loc: operator_loc }
|
2915
2952
|
end
|
@@ -2917,7 +2954,7 @@ module Prism
|
|
2917
2954
|
# attr_reader value: Prism::node
|
2918
2955
|
attr_reader :value
|
2919
2956
|
|
2920
|
-
# attr_reader target:
|
2957
|
+
# attr_reader target: LocalVariableTargetNode
|
2921
2958
|
attr_reader :target
|
2922
2959
|
|
2923
2960
|
# attr_reader operator_loc: Location
|
@@ -3001,7 +3038,7 @@ module Prism
|
|
3001
3038
|
[*predicate, *conditions, *else_clause, case_keyword_loc, end_keyword_loc] #: Array[Prism::node | Location]
|
3002
3039
|
end
|
3003
3040
|
|
3004
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?predicate: Prism::node?, ?conditions: Array[
|
3041
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?predicate: Prism::node?, ?conditions: Array[InNode], ?else_clause: ElseNode?, ?case_keyword_loc: Location, ?end_keyword_loc: Location) -> CaseMatchNode
|
3005
3042
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, predicate: self.predicate, conditions: self.conditions, else_clause: self.else_clause, case_keyword_loc: self.case_keyword_loc, end_keyword_loc: self.end_keyword_loc)
|
3006
3043
|
CaseMatchNode.new(source, node_id, location, flags, predicate, conditions, else_clause, case_keyword_loc, end_keyword_loc)
|
3007
3044
|
end
|
@@ -3009,7 +3046,7 @@ module Prism
|
|
3009
3046
|
# def deconstruct: () -> Array[nil | Node]
|
3010
3047
|
alias deconstruct child_nodes
|
3011
3048
|
|
3012
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, predicate: Prism::node?, conditions: Array[
|
3049
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, predicate: Prism::node?, conditions: Array[InNode], else_clause: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location }
|
3013
3050
|
def deconstruct_keys(keys)
|
3014
3051
|
{ node_id: node_id, location: location, predicate: predicate, conditions: conditions, else_clause: else_clause, case_keyword_loc: case_keyword_loc, end_keyword_loc: end_keyword_loc }
|
3015
3052
|
end
|
@@ -3017,7 +3054,7 @@ module Prism
|
|
3017
3054
|
# attr_reader predicate: Prism::node?
|
3018
3055
|
attr_reader :predicate
|
3019
3056
|
|
3020
|
-
# attr_reader conditions: Array[
|
3057
|
+
# attr_reader conditions: Array[InNode]
|
3021
3058
|
attr_reader :conditions
|
3022
3059
|
|
3023
3060
|
# attr_reader else_clause: ElseNode?
|
@@ -3119,7 +3156,7 @@ module Prism
|
|
3119
3156
|
[*predicate, *conditions, *else_clause, case_keyword_loc, end_keyword_loc] #: Array[Prism::node | Location]
|
3120
3157
|
end
|
3121
3158
|
|
3122
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?predicate: Prism::node?, ?conditions: Array[
|
3159
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?predicate: Prism::node?, ?conditions: Array[WhenNode], ?else_clause: ElseNode?, ?case_keyword_loc: Location, ?end_keyword_loc: Location) -> CaseNode
|
3123
3160
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, predicate: self.predicate, conditions: self.conditions, else_clause: self.else_clause, case_keyword_loc: self.case_keyword_loc, end_keyword_loc: self.end_keyword_loc)
|
3124
3161
|
CaseNode.new(source, node_id, location, flags, predicate, conditions, else_clause, case_keyword_loc, end_keyword_loc)
|
3125
3162
|
end
|
@@ -3127,7 +3164,7 @@ module Prism
|
|
3127
3164
|
# def deconstruct: () -> Array[nil | Node]
|
3128
3165
|
alias deconstruct child_nodes
|
3129
3166
|
|
3130
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, predicate: Prism::node?, conditions: Array[
|
3167
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, predicate: Prism::node?, conditions: Array[WhenNode], else_clause: ElseNode?, case_keyword_loc: Location, end_keyword_loc: Location }
|
3131
3168
|
def deconstruct_keys(keys)
|
3132
3169
|
{ node_id: node_id, location: location, predicate: predicate, conditions: conditions, else_clause: else_clause, case_keyword_loc: case_keyword_loc, end_keyword_loc: end_keyword_loc }
|
3133
3170
|
end
|
@@ -3135,7 +3172,7 @@ module Prism
|
|
3135
3172
|
# attr_reader predicate: Prism::node?
|
3136
3173
|
attr_reader :predicate
|
3137
3174
|
|
3138
|
-
# attr_reader conditions: Array[
|
3175
|
+
# attr_reader conditions: Array[WhenNode]
|
3139
3176
|
attr_reader :conditions
|
3140
3177
|
|
3141
3178
|
# attr_reader else_clause: ElseNode?
|
@@ -3238,7 +3275,7 @@ module Prism
|
|
3238
3275
|
[class_keyword_loc, constant_path, *inheritance_operator_loc, *superclass, *body, end_keyword_loc] #: Array[Prism::node | Location]
|
3239
3276
|
end
|
3240
3277
|
|
3241
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?class_keyword_loc: Location, ?constant_path:
|
3278
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?class_keyword_loc: Location, ?constant_path: ConstantReadNode | ConstantPathNode | CallNode, ?inheritance_operator_loc: Location?, ?superclass: Prism::node?, ?body: StatementsNode | BeginNode | nil, ?end_keyword_loc: Location, ?name: Symbol) -> ClassNode
|
3242
3279
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, locals: self.locals, class_keyword_loc: self.class_keyword_loc, constant_path: self.constant_path, inheritance_operator_loc: self.inheritance_operator_loc, superclass: self.superclass, body: self.body, end_keyword_loc: self.end_keyword_loc, name: self.name)
|
3243
3280
|
ClassNode.new(source, node_id, location, flags, locals, class_keyword_loc, constant_path, inheritance_operator_loc, superclass, body, end_keyword_loc, name)
|
3244
3281
|
end
|
@@ -3246,7 +3283,7 @@ module Prism
|
|
3246
3283
|
# def deconstruct: () -> Array[nil | Node]
|
3247
3284
|
alias deconstruct child_nodes
|
3248
3285
|
|
3249
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], class_keyword_loc: Location, constant_path:
|
3286
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], class_keyword_loc: Location, constant_path: ConstantReadNode | ConstantPathNode | CallNode, inheritance_operator_loc: Location?, superclass: Prism::node?, body: StatementsNode | BeginNode | nil, end_keyword_loc: Location, name: Symbol }
|
3250
3287
|
def deconstruct_keys(keys)
|
3251
3288
|
{ node_id: node_id, location: location, locals: locals, class_keyword_loc: class_keyword_loc, constant_path: constant_path, inheritance_operator_loc: inheritance_operator_loc, superclass: superclass, body: body, end_keyword_loc: end_keyword_loc, name: name }
|
3252
3289
|
end
|
@@ -3261,7 +3298,7 @@ module Prism
|
|
3261
3298
|
@class_keyword_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
3262
3299
|
end
|
3263
3300
|
|
3264
|
-
# attr_reader constant_path:
|
3301
|
+
# attr_reader constant_path: ConstantReadNode | ConstantPathNode | CallNode
|
3265
3302
|
attr_reader :constant_path
|
3266
3303
|
|
3267
3304
|
# attr_reader inheritance_operator_loc: Location?
|
@@ -3280,7 +3317,7 @@ module Prism
|
|
3280
3317
|
# attr_reader superclass: Prism::node?
|
3281
3318
|
attr_reader :superclass
|
3282
3319
|
|
3283
|
-
# attr_reader body:
|
3320
|
+
# attr_reader body: StatementsNode | BeginNode | nil
|
3284
3321
|
attr_reader :body
|
3285
3322
|
|
3286
3323
|
# attr_reader end_keyword_loc: Location
|
@@ -5142,7 +5179,7 @@ module Prism
|
|
5142
5179
|
[name_loc, *receiver, *parameters, *body, def_keyword_loc, *operator_loc, *lparen_loc, *rparen_loc, *equal_loc, *end_keyword_loc] #: Array[Prism::node | Location]
|
5143
5180
|
end
|
5144
5181
|
|
5145
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?receiver: Prism::node?, ?parameters: ParametersNode?, ?body:
|
5182
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?name: Symbol, ?name_loc: Location, ?receiver: Prism::node?, ?parameters: ParametersNode?, ?body: StatementsNode | BeginNode | nil, ?locals: Array[Symbol], ?def_keyword_loc: Location, ?operator_loc: Location?, ?lparen_loc: Location?, ?rparen_loc: Location?, ?equal_loc: Location?, ?end_keyword_loc: Location?) -> DefNode
|
5146
5183
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, name: self.name, name_loc: self.name_loc, receiver: self.receiver, parameters: self.parameters, body: self.body, locals: self.locals, def_keyword_loc: self.def_keyword_loc, operator_loc: self.operator_loc, lparen_loc: self.lparen_loc, rparen_loc: self.rparen_loc, equal_loc: self.equal_loc, end_keyword_loc: self.end_keyword_loc)
|
5147
5184
|
DefNode.new(source, node_id, location, flags, name, name_loc, receiver, parameters, body, locals, def_keyword_loc, operator_loc, lparen_loc, rparen_loc, equal_loc, end_keyword_loc)
|
5148
5185
|
end
|
@@ -5150,7 +5187,7 @@ module Prism
|
|
5150
5187
|
# def deconstruct: () -> Array[nil | Node]
|
5151
5188
|
alias deconstruct child_nodes
|
5152
5189
|
|
5153
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, receiver: Prism::node?, parameters: ParametersNode?, body:
|
5190
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, name: Symbol, name_loc: Location, receiver: Prism::node?, parameters: ParametersNode?, body: StatementsNode | BeginNode | nil, locals: Array[Symbol], def_keyword_loc: Location, operator_loc: Location?, lparen_loc: Location?, rparen_loc: Location?, equal_loc: Location?, end_keyword_loc: Location? }
|
5154
5191
|
def deconstruct_keys(keys)
|
5155
5192
|
{ node_id: node_id, location: location, name: name, name_loc: name_loc, receiver: receiver, parameters: parameters, body: body, locals: locals, def_keyword_loc: def_keyword_loc, operator_loc: operator_loc, lparen_loc: lparen_loc, rparen_loc: rparen_loc, equal_loc: equal_loc, end_keyword_loc: end_keyword_loc }
|
5156
5193
|
end
|
@@ -5171,7 +5208,7 @@ module Prism
|
|
5171
5208
|
# attr_reader parameters: ParametersNode?
|
5172
5209
|
attr_reader :parameters
|
5173
5210
|
|
5174
|
-
# attr_reader body:
|
5211
|
+
# attr_reader body: StatementsNode | BeginNode | nil
|
5175
5212
|
attr_reader :body
|
5176
5213
|
|
5177
5214
|
# attr_reader locals: Array[Symbol]
|
@@ -5688,7 +5725,7 @@ module Prism
|
|
5688
5725
|
[operator_loc, variable] #: Array[Prism::node | Location]
|
5689
5726
|
end
|
5690
5727
|
|
5691
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?operator_loc: Location, ?variable:
|
5728
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?operator_loc: Location, ?variable: InstanceVariableReadNode | ClassVariableReadNode | GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode) -> EmbeddedVariableNode
|
5692
5729
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, operator_loc: self.operator_loc, variable: self.variable)
|
5693
5730
|
EmbeddedVariableNode.new(source, node_id, location, flags, operator_loc, variable)
|
5694
5731
|
end
|
@@ -5696,7 +5733,7 @@ module Prism
|
|
5696
5733
|
# def deconstruct: () -> Array[nil | Node]
|
5697
5734
|
alias deconstruct child_nodes
|
5698
5735
|
|
5699
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, operator_loc: Location, variable:
|
5736
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, operator_loc: Location, variable: InstanceVariableReadNode | ClassVariableReadNode | GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode }
|
5700
5737
|
def deconstruct_keys(keys)
|
5701
5738
|
{ node_id: node_id, location: location, operator_loc: operator_loc, variable: variable }
|
5702
5739
|
end
|
@@ -5708,7 +5745,7 @@ module Prism
|
|
5708
5745
|
@operator_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
5709
5746
|
end
|
5710
5747
|
|
5711
|
-
# attr_reader variable:
|
5748
|
+
# attr_reader variable: InstanceVariableReadNode | ClassVariableReadNode | GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode
|
5712
5749
|
attr_reader :variable
|
5713
5750
|
|
5714
5751
|
# def operator: () -> String
|
@@ -5965,7 +6002,7 @@ module Prism
|
|
5965
6002
|
[*constant, left, *requireds, right, *opening_loc, *closing_loc] #: Array[Prism::node | Location]
|
5966
6003
|
end
|
5967
6004
|
|
5968
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant:
|
6005
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant: ConstantReadNode | ConstantPathNode | nil, ?left: SplatNode, ?requireds: Array[Prism::node], ?right: SplatNode | MissingNode, ?opening_loc: Location?, ?closing_loc: Location?) -> FindPatternNode
|
5969
6006
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, constant: self.constant, left: self.left, requireds: self.requireds, right: self.right, opening_loc: self.opening_loc, closing_loc: self.closing_loc)
|
5970
6007
|
FindPatternNode.new(source, node_id, location, flags, constant, left, requireds, right, opening_loc, closing_loc)
|
5971
6008
|
end
|
@@ -5973,21 +6010,21 @@ module Prism
|
|
5973
6010
|
# def deconstruct: () -> Array[nil | Node]
|
5974
6011
|
alias deconstruct child_nodes
|
5975
6012
|
|
5976
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant:
|
6013
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant: ConstantReadNode | ConstantPathNode | nil, left: SplatNode, requireds: Array[Prism::node], right: SplatNode | MissingNode, opening_loc: Location?, closing_loc: Location? }
|
5977
6014
|
def deconstruct_keys(keys)
|
5978
6015
|
{ node_id: node_id, location: location, constant: constant, left: left, requireds: requireds, right: right, opening_loc: opening_loc, closing_loc: closing_loc }
|
5979
6016
|
end
|
5980
6017
|
|
5981
|
-
# attr_reader constant:
|
6018
|
+
# attr_reader constant: ConstantReadNode | ConstantPathNode | nil
|
5982
6019
|
attr_reader :constant
|
5983
6020
|
|
5984
|
-
# attr_reader left:
|
6021
|
+
# attr_reader left: SplatNode
|
5985
6022
|
attr_reader :left
|
5986
6023
|
|
5987
6024
|
# attr_reader requireds: Array[Prism::node]
|
5988
6025
|
attr_reader :requireds
|
5989
6026
|
|
5990
|
-
# attr_reader right:
|
6027
|
+
# attr_reader right: SplatNode | MissingNode
|
5991
6028
|
attr_reader :right
|
5992
6029
|
|
5993
6030
|
# attr_reader opening_loc: Location?
|
@@ -6273,7 +6310,7 @@ module Prism
|
|
6273
6310
|
[index, collection, *statements, for_keyword_loc, in_keyword_loc, *do_keyword_loc, end_keyword_loc] #: Array[Prism::node | Location]
|
6274
6311
|
end
|
6275
6312
|
|
6276
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?index:
|
6313
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?index: LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | BackReferenceReadNode | NumberedReferenceReadNode | MissingNode, ?collection: Prism::node, ?statements: StatementsNode?, ?for_keyword_loc: Location, ?in_keyword_loc: Location, ?do_keyword_loc: Location?, ?end_keyword_loc: Location) -> ForNode
|
6277
6314
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, index: self.index, collection: self.collection, statements: self.statements, for_keyword_loc: self.for_keyword_loc, in_keyword_loc: self.in_keyword_loc, do_keyword_loc: self.do_keyword_loc, end_keyword_loc: self.end_keyword_loc)
|
6278
6315
|
ForNode.new(source, node_id, location, flags, index, collection, statements, for_keyword_loc, in_keyword_loc, do_keyword_loc, end_keyword_loc)
|
6279
6316
|
end
|
@@ -6281,7 +6318,7 @@ module Prism
|
|
6281
6318
|
# def deconstruct: () -> Array[nil | Node]
|
6282
6319
|
alias deconstruct child_nodes
|
6283
6320
|
|
6284
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, index:
|
6321
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, index: LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | BackReferenceReadNode | NumberedReferenceReadNode | MissingNode, collection: Prism::node, statements: StatementsNode?, for_keyword_loc: Location, in_keyword_loc: Location, do_keyword_loc: Location?, end_keyword_loc: Location }
|
6285
6322
|
def deconstruct_keys(keys)
|
6286
6323
|
{ node_id: node_id, location: location, index: index, collection: collection, statements: statements, for_keyword_loc: for_keyword_loc, in_keyword_loc: in_keyword_loc, do_keyword_loc: do_keyword_loc, end_keyword_loc: end_keyword_loc }
|
6287
6324
|
end
|
@@ -7344,7 +7381,7 @@ module Prism
|
|
7344
7381
|
[*constant, *elements, *rest, *opening_loc, *closing_loc] #: Array[Prism::node | Location]
|
7345
7382
|
end
|
7346
7383
|
|
7347
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant:
|
7384
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?constant: ConstantReadNode | ConstantPathNode | nil, ?elements: Array[AssocNode], ?rest: AssocSplatNode | NoKeywordsParameterNode | nil, ?opening_loc: Location?, ?closing_loc: Location?) -> HashPatternNode
|
7348
7385
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, constant: self.constant, elements: self.elements, rest: self.rest, opening_loc: self.opening_loc, closing_loc: self.closing_loc)
|
7349
7386
|
HashPatternNode.new(source, node_id, location, flags, constant, elements, rest, opening_loc, closing_loc)
|
7350
7387
|
end
|
@@ -7352,12 +7389,12 @@ module Prism
|
|
7352
7389
|
# def deconstruct: () -> Array[nil | Node]
|
7353
7390
|
alias deconstruct child_nodes
|
7354
7391
|
|
7355
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant:
|
7392
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, constant: ConstantReadNode | ConstantPathNode | nil, elements: Array[AssocNode], rest: AssocSplatNode | NoKeywordsParameterNode | nil, opening_loc: Location?, closing_loc: Location? }
|
7356
7393
|
def deconstruct_keys(keys)
|
7357
7394
|
{ node_id: node_id, location: location, constant: constant, elements: elements, rest: rest, opening_loc: opening_loc, closing_loc: closing_loc }
|
7358
7395
|
end
|
7359
7396
|
|
7360
|
-
# attr_reader constant:
|
7397
|
+
# attr_reader constant: ConstantReadNode | ConstantPathNode | nil
|
7361
7398
|
attr_reader :constant
|
7362
7399
|
|
7363
7400
|
# attr_reader elements: Array[AssocNode]
|
@@ -7742,7 +7779,7 @@ module Prism
|
|
7742
7779
|
[value] #: Array[Prism::node | Location]
|
7743
7780
|
end
|
7744
7781
|
|
7745
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value:
|
7782
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?value: LocalVariableReadNode | CallNode | ConstantReadNode | LocalVariableTargetNode) -> ImplicitNode
|
7746
7783
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, value: self.value)
|
7747
7784
|
ImplicitNode.new(source, node_id, location, flags, value)
|
7748
7785
|
end
|
@@ -7750,12 +7787,12 @@ module Prism
|
|
7750
7787
|
# def deconstruct: () -> Array[nil | Node]
|
7751
7788
|
alias deconstruct child_nodes
|
7752
7789
|
|
7753
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value:
|
7790
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, value: LocalVariableReadNode | CallNode | ConstantReadNode | LocalVariableTargetNode }
|
7754
7791
|
def deconstruct_keys(keys)
|
7755
7792
|
{ node_id: node_id, location: location, value: value }
|
7756
7793
|
end
|
7757
7794
|
|
7758
|
-
# attr_reader value:
|
7795
|
+
# attr_reader value: LocalVariableReadNode | CallNode | ConstantReadNode | LocalVariableTargetNode
|
7759
7796
|
attr_reader :value
|
7760
7797
|
|
7761
7798
|
# def inspect -> String
|
@@ -8019,7 +8056,7 @@ module Prism
|
|
8019
8056
|
[*receiver, *call_operator_loc, opening_loc, *arguments, closing_loc, *block, operator_loc, value] #: Array[Prism::node | Location]
|
8020
8057
|
end
|
8021
8058
|
|
8022
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block:
|
8059
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: BlockArgumentNode?, ?operator_loc: Location, ?value: Prism::node) -> IndexAndWriteNode
|
8023
8060
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block, operator_loc: self.operator_loc, value: self.value)
|
8024
8061
|
IndexAndWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value)
|
8025
8062
|
end
|
@@ -8027,7 +8064,7 @@ module Prism
|
|
8027
8064
|
# def deconstruct: () -> Array[nil | Node]
|
8028
8065
|
alias deconstruct child_nodes
|
8029
8066
|
|
8030
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block:
|
8067
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: BlockArgumentNode?, operator_loc: Location, value: Prism::node }
|
8031
8068
|
def deconstruct_keys(keys)
|
8032
8069
|
{ node_id: node_id, location: location, receiver: receiver, call_operator_loc: call_operator_loc, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block, operator_loc: operator_loc, value: value }
|
8033
8070
|
end
|
@@ -8085,7 +8122,7 @@ module Prism
|
|
8085
8122
|
@closing_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
8086
8123
|
end
|
8087
8124
|
|
8088
|
-
# attr_reader block:
|
8125
|
+
# attr_reader block: BlockArgumentNode?
|
8089
8126
|
attr_reader :block
|
8090
8127
|
|
8091
8128
|
# attr_reader operator_loc: Location
|
@@ -8196,7 +8233,7 @@ module Prism
|
|
8196
8233
|
[*receiver, *call_operator_loc, opening_loc, *arguments, closing_loc, *block, binary_operator_loc, value] #: Array[Prism::node | Location]
|
8197
8234
|
end
|
8198
8235
|
|
8199
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block:
|
8236
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: BlockArgumentNode?, ?binary_operator: Symbol, ?binary_operator_loc: Location, ?value: Prism::node) -> IndexOperatorWriteNode
|
8200
8237
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block, binary_operator: self.binary_operator, binary_operator_loc: self.binary_operator_loc, value: self.value)
|
8201
8238
|
IndexOperatorWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, binary_operator, binary_operator_loc, value)
|
8202
8239
|
end
|
@@ -8204,7 +8241,7 @@ module Prism
|
|
8204
8241
|
# def deconstruct: () -> Array[nil | Node]
|
8205
8242
|
alias deconstruct child_nodes
|
8206
8243
|
|
8207
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block:
|
8244
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: BlockArgumentNode?, binary_operator: Symbol, binary_operator_loc: Location, value: Prism::node }
|
8208
8245
|
def deconstruct_keys(keys)
|
8209
8246
|
{ node_id: node_id, location: location, receiver: receiver, call_operator_loc: call_operator_loc, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block, binary_operator: binary_operator, binary_operator_loc: binary_operator_loc, value: value }
|
8210
8247
|
end
|
@@ -8262,7 +8299,7 @@ module Prism
|
|
8262
8299
|
@closing_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
8263
8300
|
end
|
8264
8301
|
|
8265
|
-
# attr_reader block:
|
8302
|
+
# attr_reader block: BlockArgumentNode?
|
8266
8303
|
attr_reader :block
|
8267
8304
|
|
8268
8305
|
# attr_reader binary_operator: Symbol
|
@@ -8371,7 +8408,7 @@ module Prism
|
|
8371
8408
|
[*receiver, *call_operator_loc, opening_loc, *arguments, closing_loc, *block, operator_loc, value] #: Array[Prism::node | Location]
|
8372
8409
|
end
|
8373
8410
|
|
8374
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block:
|
8411
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node?, ?call_operator_loc: Location?, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: BlockArgumentNode?, ?operator_loc: Location, ?value: Prism::node) -> IndexOrWriteNode
|
8375
8412
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, receiver: self.receiver, call_operator_loc: self.call_operator_loc, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block, operator_loc: self.operator_loc, value: self.value)
|
8376
8413
|
IndexOrWriteNode.new(source, node_id, location, flags, receiver, call_operator_loc, opening_loc, arguments, closing_loc, block, operator_loc, value)
|
8377
8414
|
end
|
@@ -8379,7 +8416,7 @@ module Prism
|
|
8379
8416
|
# def deconstruct: () -> Array[nil | Node]
|
8380
8417
|
alias deconstruct child_nodes
|
8381
8418
|
|
8382
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block:
|
8419
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node?, call_operator_loc: Location?, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: BlockArgumentNode?, operator_loc: Location, value: Prism::node }
|
8383
8420
|
def deconstruct_keys(keys)
|
8384
8421
|
{ node_id: node_id, location: location, receiver: receiver, call_operator_loc: call_operator_loc, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block, operator_loc: operator_loc, value: value }
|
8385
8422
|
end
|
@@ -8437,7 +8474,7 @@ module Prism
|
|
8437
8474
|
@closing_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
8438
8475
|
end
|
8439
8476
|
|
8440
|
-
# attr_reader block:
|
8477
|
+
# attr_reader block: BlockArgumentNode?
|
8441
8478
|
attr_reader :block
|
8442
8479
|
|
8443
8480
|
# attr_reader operator_loc: Location
|
@@ -8551,7 +8588,7 @@ module Prism
|
|
8551
8588
|
[receiver, opening_loc, *arguments, closing_loc, *block] #: Array[Prism::node | Location]
|
8552
8589
|
end
|
8553
8590
|
|
8554
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block:
|
8591
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?receiver: Prism::node, ?opening_loc: Location, ?arguments: ArgumentsNode?, ?closing_loc: Location, ?block: BlockArgumentNode?) -> IndexTargetNode
|
8555
8592
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, receiver: self.receiver, opening_loc: self.opening_loc, arguments: self.arguments, closing_loc: self.closing_loc, block: self.block)
|
8556
8593
|
IndexTargetNode.new(source, node_id, location, flags, receiver, opening_loc, arguments, closing_loc, block)
|
8557
8594
|
end
|
@@ -8559,7 +8596,7 @@ module Prism
|
|
8559
8596
|
# def deconstruct: () -> Array[nil | Node]
|
8560
8597
|
alias deconstruct child_nodes
|
8561
8598
|
|
8562
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block:
|
8599
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, receiver: Prism::node, opening_loc: Location, arguments: ArgumentsNode?, closing_loc: Location, block: BlockArgumentNode? }
|
8563
8600
|
def deconstruct_keys(keys)
|
8564
8601
|
{ node_id: node_id, location: location, receiver: receiver, opening_loc: opening_loc, arguments: arguments, closing_loc: closing_loc, block: block }
|
8565
8602
|
end
|
@@ -8604,7 +8641,7 @@ module Prism
|
|
8604
8641
|
@closing_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
8605
8642
|
end
|
8606
8643
|
|
8607
|
-
# attr_reader block:
|
8644
|
+
# attr_reader block: BlockArgumentNode?
|
8608
8645
|
attr_reader :block
|
8609
8646
|
|
8610
8647
|
# def opening: () -> String
|
@@ -10333,7 +10370,7 @@ module Prism
|
|
10333
10370
|
[operator_loc, opening_loc, closing_loc, *parameters, *body] #: Array[Prism::node | Location]
|
10334
10371
|
end
|
10335
10372
|
|
10336
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?operator_loc: Location, ?opening_loc: Location, ?closing_loc: Location, ?parameters:
|
10373
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?operator_loc: Location, ?opening_loc: Location, ?closing_loc: Location, ?parameters: BlockParametersNode | NumberedParametersNode | ItParametersNode | nil, ?body: StatementsNode | BeginNode | nil) -> LambdaNode
|
10337
10374
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, locals: self.locals, operator_loc: self.operator_loc, opening_loc: self.opening_loc, closing_loc: self.closing_loc, parameters: self.parameters, body: self.body)
|
10338
10375
|
LambdaNode.new(source, node_id, location, flags, locals, operator_loc, opening_loc, closing_loc, parameters, body)
|
10339
10376
|
end
|
@@ -10341,7 +10378,7 @@ module Prism
|
|
10341
10378
|
# def deconstruct: () -> Array[nil | Node]
|
10342
10379
|
alias deconstruct child_nodes
|
10343
10380
|
|
10344
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], operator_loc: Location, opening_loc: Location, closing_loc: Location, parameters:
|
10381
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], operator_loc: Location, opening_loc: Location, closing_loc: Location, parameters: BlockParametersNode | NumberedParametersNode | ItParametersNode | nil, body: StatementsNode | BeginNode | nil }
|
10345
10382
|
def deconstruct_keys(keys)
|
10346
10383
|
{ node_id: node_id, location: location, locals: locals, operator_loc: operator_loc, opening_loc: opening_loc, closing_loc: closing_loc, parameters: parameters, body: body }
|
10347
10384
|
end
|
@@ -10370,10 +10407,10 @@ module Prism
|
|
10370
10407
|
@closing_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
10371
10408
|
end
|
10372
10409
|
|
10373
|
-
# attr_reader parameters:
|
10410
|
+
# attr_reader parameters: BlockParametersNode | NumberedParametersNode | ItParametersNode | nil
|
10374
10411
|
attr_reader :parameters
|
10375
10412
|
|
10376
|
-
# attr_reader body:
|
10413
|
+
# attr_reader body: StatementsNode | BeginNode | nil
|
10377
10414
|
attr_reader :body
|
10378
10415
|
|
10379
10416
|
# def operator: () -> String
|
@@ -11581,7 +11618,7 @@ module Prism
|
|
11581
11618
|
[module_keyword_loc, constant_path, *body, end_keyword_loc] #: Array[Prism::node | Location]
|
11582
11619
|
end
|
11583
11620
|
|
11584
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?module_keyword_loc: Location, ?constant_path:
|
11621
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?module_keyword_loc: Location, ?constant_path: ConstantReadNode | ConstantPathNode | MissingNode, ?body: StatementsNode | BeginNode | nil, ?end_keyword_loc: Location, ?name: Symbol) -> ModuleNode
|
11585
11622
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, locals: self.locals, module_keyword_loc: self.module_keyword_loc, constant_path: self.constant_path, body: self.body, end_keyword_loc: self.end_keyword_loc, name: self.name)
|
11586
11623
|
ModuleNode.new(source, node_id, location, flags, locals, module_keyword_loc, constant_path, body, end_keyword_loc, name)
|
11587
11624
|
end
|
@@ -11589,7 +11626,7 @@ module Prism
|
|
11589
11626
|
# def deconstruct: () -> Array[nil | Node]
|
11590
11627
|
alias deconstruct child_nodes
|
11591
11628
|
|
11592
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], module_keyword_loc: Location, constant_path:
|
11629
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], module_keyword_loc: Location, constant_path: ConstantReadNode | ConstantPathNode | MissingNode, body: StatementsNode | BeginNode | nil, end_keyword_loc: Location, name: Symbol }
|
11593
11630
|
def deconstruct_keys(keys)
|
11594
11631
|
{ node_id: node_id, location: location, locals: locals, module_keyword_loc: module_keyword_loc, constant_path: constant_path, body: body, end_keyword_loc: end_keyword_loc, name: name }
|
11595
11632
|
end
|
@@ -11604,10 +11641,10 @@ module Prism
|
|
11604
11641
|
@module_keyword_loc = Location.new(source, location >> 32, location & 0xFFFFFFFF)
|
11605
11642
|
end
|
11606
11643
|
|
11607
|
-
# attr_reader constant_path:
|
11644
|
+
# attr_reader constant_path: ConstantReadNode | ConstantPathNode | MissingNode
|
11608
11645
|
attr_reader :constant_path
|
11609
11646
|
|
11610
|
-
# attr_reader body:
|
11647
|
+
# attr_reader body: StatementsNode | BeginNode | nil
|
11611
11648
|
attr_reader :body
|
11612
11649
|
|
11613
11650
|
# attr_reader end_keyword_loc: Location
|
@@ -11706,7 +11743,7 @@ module Prism
|
|
11706
11743
|
[*lefts, *rest, *rights, *lparen_loc, *rparen_loc] #: Array[Prism::node | Location]
|
11707
11744
|
end
|
11708
11745
|
|
11709
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], ?rest: ImplicitRestNode | SplatNode | nil, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode], ?lparen_loc: Location?, ?rparen_loc: Location?) -> MultiTargetNode
|
11746
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], ?rest: ImplicitRestNode | SplatNode | nil, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], ?lparen_loc: Location?, ?rparen_loc: Location?) -> MultiTargetNode
|
11710
11747
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, lefts: self.lefts, rest: self.rest, rights: self.rights, lparen_loc: self.lparen_loc, rparen_loc: self.rparen_loc)
|
11711
11748
|
MultiTargetNode.new(source, node_id, location, flags, lefts, rest, rights, lparen_loc, rparen_loc)
|
11712
11749
|
end
|
@@ -11714,7 +11751,7 @@ module Prism
|
|
11714
11751
|
# def deconstruct: () -> Array[nil | Node]
|
11715
11752
|
alias deconstruct child_nodes
|
11716
11753
|
|
11717
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], rest: ImplicitRestNode | SplatNode | nil, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode], lparen_loc: Location?, rparen_loc: Location? }
|
11754
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], rest: ImplicitRestNode | SplatNode | nil, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | RequiredParameterNode | BackReferenceReadNode | NumberedReferenceReadNode], lparen_loc: Location?, rparen_loc: Location? }
|
11718
11755
|
def deconstruct_keys(keys)
|
11719
11756
|
{ node_id: node_id, location: location, lefts: lefts, rest: rest, rights: rights, lparen_loc: lparen_loc, rparen_loc: rparen_loc }
|
11720
11757
|
end
|
@@ -11740,7 +11777,7 @@ module Prism
|
|
11740
11777
|
# a, (b, *) = 1, 2, 3, 4
|
11741
11778
|
# ^
|
11742
11779
|
#
|
11743
|
-
# If the `*` is omitted,
|
11780
|
+
# If the `*` is omitted, this field will contain an `ImplicitRestNode`
|
11744
11781
|
#
|
11745
11782
|
# a, (b,) = 1, 2, 3, 4
|
11746
11783
|
# ^
|
@@ -11868,7 +11905,7 @@ module Prism
|
|
11868
11905
|
[*lefts, *rest, *rights, *lparen_loc, *rparen_loc, operator_loc, value] #: Array[Prism::node | Location]
|
11869
11906
|
end
|
11870
11907
|
|
11871
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], ?rest: ImplicitRestNode | SplatNode | nil, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], ?lparen_loc: Location?, ?rparen_loc: Location?, ?operator_loc: Location, ?value: Prism::node) -> MultiWriteNode
|
11908
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | BackReferenceReadNode | NumberedReferenceReadNode], ?rest: ImplicitRestNode | SplatNode | nil, ?rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | BackReferenceReadNode | NumberedReferenceReadNode], ?lparen_loc: Location?, ?rparen_loc: Location?, ?operator_loc: Location, ?value: Prism::node) -> MultiWriteNode
|
11872
11909
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, lefts: self.lefts, rest: self.rest, rights: self.rights, lparen_loc: self.lparen_loc, rparen_loc: self.rparen_loc, operator_loc: self.operator_loc, value: self.value)
|
11873
11910
|
MultiWriteNode.new(source, node_id, location, flags, lefts, rest, rights, lparen_loc, rparen_loc, operator_loc, value)
|
11874
11911
|
end
|
@@ -11876,7 +11913,7 @@ module Prism
|
|
11876
11913
|
# def deconstruct: () -> Array[nil | Node]
|
11877
11914
|
alias deconstruct child_nodes
|
11878
11915
|
|
11879
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], rest: ImplicitRestNode | SplatNode | nil, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode], lparen_loc: Location?, rparen_loc: Location?, operator_loc: Location, value: Prism::node }
|
11916
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, lefts: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | BackReferenceReadNode | NumberedReferenceReadNode], rest: ImplicitRestNode | SplatNode | nil, rights: Array[LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | MultiTargetNode | BackReferenceReadNode | NumberedReferenceReadNode], lparen_loc: Location?, rparen_loc: Location?, operator_loc: Location, value: Prism::node }
|
11880
11917
|
def deconstruct_keys(keys)
|
11881
11918
|
{ node_id: node_id, location: location, lefts: lefts, rest: rest, rights: rights, lparen_loc: lparen_loc, rparen_loc: rparen_loc, operator_loc: operator_loc, value: value }
|
11882
11919
|
end
|
@@ -11902,7 +11939,7 @@ module Prism
|
|
11902
11939
|
# a, b, * = 1, 2, 3, 4
|
11903
11940
|
# ^
|
11904
11941
|
#
|
11905
|
-
# If the `*` is omitted,
|
11942
|
+
# If the `*` is omitted, this field will contain an `ImplicitRestNode`
|
11906
11943
|
#
|
11907
11944
|
# a, b, = 1, 2, 3, 4
|
11908
11945
|
# ^
|
@@ -12674,7 +12711,7 @@ module Prism
|
|
12674
12711
|
# ^
|
12675
12712
|
attr_reader :left
|
12676
12713
|
|
12677
|
-
# Represents the right side of the expression.
|
12714
|
+
# Represents the right side of the expression.
|
12678
12715
|
#
|
12679
12716
|
# left || right
|
12680
12717
|
# ^^^^^
|
@@ -13092,7 +13129,7 @@ module Prism
|
|
13092
13129
|
[variable, operator_loc] #: Array[Prism::node | Location]
|
13093
13130
|
end
|
13094
13131
|
|
13095
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?variable:
|
13132
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?variable: LocalVariableReadNode | InstanceVariableReadNode | ClassVariableReadNode | GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode | ItLocalVariableReadNode | MissingNode, ?operator_loc: Location) -> PinnedVariableNode
|
13096
13133
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, variable: self.variable, operator_loc: self.operator_loc)
|
13097
13134
|
PinnedVariableNode.new(source, node_id, location, flags, variable, operator_loc)
|
13098
13135
|
end
|
@@ -13100,12 +13137,12 @@ module Prism
|
|
13100
13137
|
# def deconstruct: () -> Array[nil | Node]
|
13101
13138
|
alias deconstruct child_nodes
|
13102
13139
|
|
13103
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, variable:
|
13140
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, variable: LocalVariableReadNode | InstanceVariableReadNode | ClassVariableReadNode | GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode | ItLocalVariableReadNode | MissingNode, operator_loc: Location }
|
13104
13141
|
def deconstruct_keys(keys)
|
13105
13142
|
{ node_id: node_id, location: location, variable: variable, operator_loc: operator_loc }
|
13106
13143
|
end
|
13107
13144
|
|
13108
|
-
# attr_reader variable:
|
13145
|
+
# attr_reader variable: LocalVariableReadNode | InstanceVariableReadNode | ClassVariableReadNode | GlobalVariableReadNode | BackReferenceReadNode | NumberedReferenceReadNode | ItLocalVariableReadNode | MissingNode
|
13109
13146
|
attr_reader :variable
|
13110
13147
|
|
13111
13148
|
# attr_reader operator_loc: Location
|
@@ -14223,7 +14260,7 @@ module Prism
|
|
14223
14260
|
[keyword_loc, *exceptions, *operator_loc, *reference, *statements, *subsequent] #: Array[Prism::node | Location]
|
14224
14261
|
end
|
14225
14262
|
|
14226
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?exceptions: Array[Prism::node], ?operator_loc: Location?, ?reference:
|
14263
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?exceptions: Array[Prism::node], ?operator_loc: Location?, ?reference: LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | BackReferenceReadNode | NumberedReferenceReadNode | MissingNode | nil, ?statements: StatementsNode?, ?subsequent: RescueNode?) -> RescueNode
|
14227
14264
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, keyword_loc: self.keyword_loc, exceptions: self.exceptions, operator_loc: self.operator_loc, reference: self.reference, statements: self.statements, subsequent: self.subsequent)
|
14228
14265
|
RescueNode.new(source, node_id, location, flags, keyword_loc, exceptions, operator_loc, reference, statements, subsequent)
|
14229
14266
|
end
|
@@ -14231,7 +14268,7 @@ module Prism
|
|
14231
14268
|
# def deconstruct: () -> Array[nil | Node]
|
14232
14269
|
alias deconstruct child_nodes
|
14233
14270
|
|
14234
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, exceptions: Array[Prism::node], operator_loc: Location?, reference:
|
14271
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, exceptions: Array[Prism::node], operator_loc: Location?, reference: LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | BackReferenceReadNode | NumberedReferenceReadNode | MissingNode | nil, statements: StatementsNode?, subsequent: RescueNode? }
|
14235
14272
|
def deconstruct_keys(keys)
|
14236
14273
|
{ node_id: node_id, location: location, keyword_loc: keyword_loc, exceptions: exceptions, operator_loc: operator_loc, reference: reference, statements: statements, subsequent: subsequent }
|
14237
14274
|
end
|
@@ -14259,7 +14296,7 @@ module Prism
|
|
14259
14296
|
end
|
14260
14297
|
end
|
14261
14298
|
|
14262
|
-
# attr_reader reference:
|
14299
|
+
# attr_reader reference: LocalVariableTargetNode | InstanceVariableTargetNode | ClassVariableTargetNode | GlobalVariableTargetNode | ConstantTargetNode | ConstantPathTargetNode | CallTargetNode | IndexTargetNode | BackReferenceReadNode | NumberedReferenceReadNode | MissingNode | nil
|
14263
14300
|
attr_reader :reference
|
14264
14301
|
|
14265
14302
|
# attr_reader statements: StatementsNode?
|
@@ -14773,7 +14810,7 @@ module Prism
|
|
14773
14810
|
[class_keyword_loc, operator_loc, expression, *body, end_keyword_loc] #: Array[Prism::node | Location]
|
14774
14811
|
end
|
14775
14812
|
|
14776
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?class_keyword_loc: Location, ?operator_loc: Location, ?expression: Prism::node, ?body:
|
14813
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?locals: Array[Symbol], ?class_keyword_loc: Location, ?operator_loc: Location, ?expression: Prism::node, ?body: StatementsNode | BeginNode | nil, ?end_keyword_loc: Location) -> SingletonClassNode
|
14777
14814
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, locals: self.locals, class_keyword_loc: self.class_keyword_loc, operator_loc: self.operator_loc, expression: self.expression, body: self.body, end_keyword_loc: self.end_keyword_loc)
|
14778
14815
|
SingletonClassNode.new(source, node_id, location, flags, locals, class_keyword_loc, operator_loc, expression, body, end_keyword_loc)
|
14779
14816
|
end
|
@@ -14781,7 +14818,7 @@ module Prism
|
|
14781
14818
|
# def deconstruct: () -> Array[nil | Node]
|
14782
14819
|
alias deconstruct child_nodes
|
14783
14820
|
|
14784
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], class_keyword_loc: Location, operator_loc: Location, expression: Prism::node, body:
|
14821
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, locals: Array[Symbol], class_keyword_loc: Location, operator_loc: Location, expression: Prism::node, body: StatementsNode | BeginNode | nil, end_keyword_loc: Location }
|
14785
14822
|
def deconstruct_keys(keys)
|
14786
14823
|
{ node_id: node_id, location: location, locals: locals, class_keyword_loc: class_keyword_loc, operator_loc: operator_loc, expression: expression, body: body, end_keyword_loc: end_keyword_loc }
|
14787
14824
|
end
|
@@ -14806,7 +14843,7 @@ module Prism
|
|
14806
14843
|
# attr_reader expression: Prism::node
|
14807
14844
|
attr_reader :expression
|
14808
14845
|
|
14809
|
-
# attr_reader body:
|
14846
|
+
# attr_reader body: StatementsNode | BeginNode | nil
|
14810
14847
|
attr_reader :body
|
14811
14848
|
|
14812
14849
|
# attr_reader end_keyword_loc: Location
|
@@ -15451,7 +15488,7 @@ module Prism
|
|
15451
15488
|
[keyword_loc, *lparen_loc, *arguments, *rparen_loc, *block] #: Array[Prism::node | Location]
|
15452
15489
|
end
|
15453
15490
|
|
15454
|
-
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?lparen_loc: Location?, ?arguments: ArgumentsNode?, ?rparen_loc: Location?, ?block:
|
15491
|
+
# def copy: (?node_id: Integer, ?location: Location, ?flags: Integer, ?keyword_loc: Location, ?lparen_loc: Location?, ?arguments: ArgumentsNode?, ?rparen_loc: Location?, ?block: BlockNode | BlockArgumentNode | nil) -> SuperNode
|
15455
15492
|
def copy(node_id: self.node_id, location: self.location, flags: self.flags, keyword_loc: self.keyword_loc, lparen_loc: self.lparen_loc, arguments: self.arguments, rparen_loc: self.rparen_loc, block: self.block)
|
15456
15493
|
SuperNode.new(source, node_id, location, flags, keyword_loc, lparen_loc, arguments, rparen_loc, block)
|
15457
15494
|
end
|
@@ -15459,7 +15496,7 @@ module Prism
|
|
15459
15496
|
# def deconstruct: () -> Array[nil | Node]
|
15460
15497
|
alias deconstruct child_nodes
|
15461
15498
|
|
15462
|
-
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location?, block:
|
15499
|
+
# def deconstruct_keys: (Array[Symbol] keys) -> { node_id: Integer, location: Location, keyword_loc: Location, lparen_loc: Location?, arguments: ArgumentsNode?, rparen_loc: Location?, block: BlockNode | BlockArgumentNode | nil }
|
15463
15500
|
def deconstruct_keys(keys)
|
15464
15501
|
{ node_id: node_id, location: location, keyword_loc: keyword_loc, lparen_loc: lparen_loc, arguments: arguments, rparen_loc: rparen_loc, block: block }
|
15465
15502
|
end
|
@@ -15500,7 +15537,7 @@ module Prism
|
|
15500
15537
|
end
|
15501
15538
|
end
|
15502
15539
|
|
15503
|
-
# attr_reader block:
|
15540
|
+
# attr_reader block: BlockNode | BlockArgumentNode | nil
|
15504
15541
|
attr_reader :block
|
15505
15542
|
|
15506
15543
|
# def keyword: () -> String
|
@@ -16645,14 +16682,20 @@ module Prism
|
|
16645
16682
|
|
16646
16683
|
# Flags for arguments nodes.
|
16647
16684
|
module ArgumentsNodeFlags
|
16648
|
-
# if arguments contain
|
16649
|
-
|
16685
|
+
# if the arguments contain forwarding
|
16686
|
+
CONTAINS_FORWARDING = 1 << 2
|
16687
|
+
|
16688
|
+
# if the arguments contain keywords
|
16689
|
+
CONTAINS_KEYWORDS = 1 << 3
|
16690
|
+
|
16691
|
+
# if the arguments contain a keyword splat
|
16692
|
+
CONTAINS_KEYWORD_SPLAT = 1 << 4
|
16650
16693
|
|
16651
|
-
# if arguments contain
|
16652
|
-
|
16694
|
+
# if the arguments contain a splat
|
16695
|
+
CONTAINS_SPLAT = 1 << 5
|
16653
16696
|
|
16654
|
-
# if arguments contain
|
16655
|
-
|
16697
|
+
# if the arguments contain multiple splats
|
16698
|
+
CONTAINS_MULTIPLE_SPLATS = 1 << 6
|
16656
16699
|
end
|
16657
16700
|
|
16658
16701
|
# Flags for array nodes.
|