@@ -814,8 +814,6 @@ nodes:
814814 - GlobalVariableReadNode
815815 - BackReferenceReadNode
816816 - NumberedReferenceReadNode
817- - on error : SymbolNode # alias $a b
818- - on error : MissingNode # alias $a 42
819817 comment : |
820818 Represents the old name of the global variable that can be used before aliasing.
821819
@@ -856,8 +854,6 @@ nodes:
856854 kind :
857855 - SymbolNode
858856 - InterpolatedSymbolNode
859- - on error : GlobalVariableReadNode # alias a $b
860- - on error : MissingNode # alias a 42
861857 comment : |
862858 Represents the old name of the method that will be aliased.
863859
@@ -1871,7 +1867,6 @@ nodes:
18711867 kind :
18721868 - ConstantReadNode
18731869 - ConstantPathNode
1874- - on error : CallNode # class 0.X end
18751870 - name : inheritance_operator_loc
18761871 type : location?
18771872 comment : |
@@ -2425,6 +2420,15 @@ nodes:
24252420 ^^^^^^
24262421 bar
24272422 end
2423+ - name : ErrorRecoveryNode
2424+ fields :
2425+ - name : unexpected
2426+ type : node?
2427+ kind : Node
2428+ comment : |
2429+ The unexpected node that was found in the tree, if there was one.
2430+ comment : |
2431+ Represents a node that is either missing or unexpected and results in a syntax error.
24282432 - name : FalseNode
24292433 comment : |
24302434 Represents the use of the literal `false` keyword.
@@ -2467,9 +2471,7 @@ nodes:
24672471 ^^^^^^
24682472 - name : right
24692473 type : node
2470- kind :
2471- - SplatNode
2472- - on error : MissingNode
2474+ kind : SplatNode
24732475 comment : |
24742476 Represents the second wildcard node in the pattern.
24752477
@@ -2552,9 +2554,6 @@ nodes:
25522554 - CallTargetNode
25532555 - IndexTargetNode
25542556 - MultiTargetNode
2555- - on error : BackReferenceReadNode # for $& in a end
2556- - on error : NumberedReferenceReadNode # for $1 in a end
2557- - on error : MissingNode # for in 1..10; end
25582557 comment : |
25592558 The index expression for `for` loops.
25602559
@@ -3308,10 +3307,6 @@ nodes:
33083307 - EmbeddedStatementsNode
33093308 - EmbeddedVariableNode
33103309 - InterpolatedStringNode # `"a" "#{b}"`
3311- - on error : XStringNode # `<<`FOO` "bar"
3312- - on error : InterpolatedXStringNode
3313- - on error : SymbolNode
3314- - on error : InterpolatedSymbolNode
33153310 - name : closing_loc
33163311 type : location?
33173312 newline : parts
@@ -3689,9 +3684,6 @@ nodes:
36893684
36903685 /(?<foo>bar)/ =~ baz
36913686 ^^^^^^^^^^^^^^^^^^^^
3692- - name : MissingNode
3693- comment : |
3694- Represents a node that is missing from the source and results in a syntax error.
36953687 - name : ModuleNode
36963688 fields :
36973689 - name : locals
@@ -3703,7 +3695,6 @@ nodes:
37033695 kind :
37043696 - ConstantReadNode
37053697 - ConstantPathNode
3706- - on error : MissingNode # module Parent module end
37073698 - name : body
37083699 type : node?
37093700 kind :
@@ -3733,8 +3724,6 @@ nodes:
37333724 - IndexTargetNode
37343725 - MultiTargetNode
37353726 - RequiredParameterNode # def m((a,b)); end
3736- - on error : BackReferenceReadNode # a, (b, $&) = z
3737- - on error : NumberedReferenceReadNode # a, (b, $1) = z
37383727 comment : |
37393728 Represents the targets expressions before a splat node.
37403729
@@ -3778,8 +3767,6 @@ nodes:
37783767 - IndexTargetNode
37793768 - MultiTargetNode
37803769 - RequiredParameterNode # def m((*,b)); end
3781- - on error : BackReferenceReadNode # a, (*, $&) = z
3782- - on error : NumberedReferenceReadNode # a, (*, $1) = z
37833770 comment : |
37843771 Represents the targets expressions after a splat node.
37853772
@@ -3823,8 +3810,6 @@ nodes:
38233810 - CallTargetNode
38243811 - IndexTargetNode
38253812 - MultiTargetNode
3826- - on error : BackReferenceReadNode # $&, = z
3827- - on error : NumberedReferenceReadNode # $1, = z
38283813 comment : |
38293814 Represents the targets expressions before a splat node.
38303815
@@ -3867,8 +3852,6 @@ nodes:
38673852 - CallTargetNode
38683853 - IndexTargetNode
38693854 - MultiTargetNode
3870- - on error : BackReferenceReadNode # *, $& = z
3871- - on error : NumberedReferenceReadNode # *, $1 = z
38723855 comment : |
38733856 Represents the targets expressions after a splat node.
38743857
@@ -4066,14 +4049,6 @@ nodes:
40664049 kind :
40674050 - RequiredParameterNode
40684051 - MultiTargetNode
4069- # On parsing error of `f(**kwargs, ...)` or `f(**nil, ...)`, the keyword_rest value is moved here:
4070- - on error : KeywordRestParameterNode
4071- - on error : NoKeywordsParameterNode
4072- # On parsing error of `f(..., ...)`, the first forwarding parameter is moved here:
4073- - on error : ForwardingParameterNode
4074- # On parsing error of `f(&nil, &foo)`/`f(&foo, &nil)`, the first forwarding parameter is moved here:
4075- - on error : BlockParameterNode
4076- - on error : NoBlockParameterNode
40774052 - name : keywords
40784053 type : node[]
40794054 kind :
@@ -4160,7 +4135,6 @@ nodes:
41604135 - BackReferenceReadNode # foo in ^$&
41614136 - NumberedReferenceReadNode # foo in ^$1
41624137 - ItLocalVariableReadNode # proc { 1 in ^it }
4163- - on error : MissingNode # foo in ^Bar
41644138 comment : |
41654139 The variable used in the pinned expression
41664140
@@ -4243,7 +4217,7 @@ nodes:
42434217
42444218 1...foo
42454219 ^^^
4246- If neither right-hand or left-hand side was included, this will be a MissingNode .
4220+ If neither right-hand or left-hand side was included, this will be an ErrorRecoveryNode .
42474221 - name : operator_loc
42484222 type : location
42494223 comment : |
@@ -4358,9 +4332,6 @@ nodes:
43584332 - ConstantPathTargetNode
43594333 - CallTargetNode
43604334 - IndexTargetNode
4361- - on error : BackReferenceReadNode # => begin; rescue => $&; end
4362- - on error : NumberedReferenceReadNode # => begin; rescue => $1; end
4363- - on error : MissingNode # begin; rescue =>; end
43644335 - name : then_keyword_loc
43654336 type : location?
43664337 - name : statements
0 commit comments