diff --git a/node/stmt/n_alt_switch.go b/node/stmt/n_alt_switch.go new file mode 100644 index 0000000..e13a750 --- /dev/null +++ b/node/stmt/n_alt_switch.go @@ -0,0 +1,49 @@ +package stmt + +import ( + "github.com/z7zmey/php-parser/node" + "github.com/z7zmey/php-parser/walker" +) + +// AltSwitch node +type AltSwitch struct { + Cond node.Node + Cases []node.Node +} + +// NewAltSwitch node constuctor +func NewAltSwitch(Cond node.Node, Cases []node.Node) *AltSwitch { + return &AltSwitch{ + Cond, + Cases, + } +} + +// Attributes returns node attributes as map +func (n *AltSwitch) Attributes() map[string]interface{} { + return nil +} + +// Walk traverses nodes +// Walk is invoked recursively until v.EnterNode returns true +func (n *AltSwitch) Walk(v walker.Visitor) { + if v.EnterNode(n) == false { + return + } + + if n.Cond != nil { + vv := v.GetChildrenVisitor("Cond") + n.Cond.Walk(vv) + } + + if n.Cases != nil { + vv := v.GetChildrenVisitor("Cases") + for _, nn := range n.Cases { + if nn != nil { + nn.Walk(vv) + } + } + } + + v.LeaveNode(n) +} diff --git a/node/stmt/t_switch_case_default_test.go b/node/stmt/t_switch_case_default_test.go index c56f4ab..bc3d505 100644 --- a/node/stmt/t_switch_case_default_test.go +++ b/node/stmt/t_switch_case_default_test.go @@ -23,7 +23,7 @@ func TestAltSwitch(t *testing.T) { expected := &stmt.StmtList{ Stmts: []node.Node{ - &stmt.Switch{ + &stmt.AltSwitch{ Cond: &scalar.Lnumber{Value: "1"}, Cases: []node.Node{ &stmt.Case{ @@ -59,7 +59,7 @@ func TestAltSwitchSemicolon(t *testing.T) { expected := &stmt.StmtList{ Stmts: []node.Node{ - &stmt.Switch{ + &stmt.AltSwitch{ Cond: &scalar.Lnumber{Value: "1"}, Cases: []node.Node{ &stmt.Case{ diff --git a/node/stmt/t_visitor_test.go b/node/stmt/t_visitor_test.go index e7dc691..d4ffa07 100644 --- a/node/stmt/t_visitor_test.go +++ b/node/stmt/t_visitor_test.go @@ -366,6 +366,14 @@ var nodesToTest = []struct { []string{"Cond", "Cases"}, map[string]interface{}{}, }, + { + &stmt.AltSwitch{ + Cond: &expr.Variable{}, + Cases: []node.Node{&stmt.Expression{}}, + }, + []string{"Cond", "Cases"}, + map[string]interface{}{}, + }, { &stmt.Throw{ Expr: &stmt.Expression{}, diff --git a/php5/php5.go b/php5/php5.go index ef31fb6..46372ee 100644 --- a/php5/php5.go +++ b/php5/php5.go @@ -344,7 +344,7 @@ const yyEofCode = 1 const yyErrCode = 2 const yyInitialStackSize = 16 -//line php5/php5.y:3796 +//line php5/php5.y:3800 //line yacctab:1 var yyExca = [...]int{ @@ -2723,13 +2723,17 @@ yydefault: yyDollar = yyS[yypt-3 : yypt+1] //line php5/php5.y:631 { - yyVAL.node = stmt.NewSwitch(yyDollar[2].node, yyDollar[3].nodesWithEndToken.nodes) + if yyDollar[3].nodesWithEndToken.endToken.Value == ";" { + yyVAL.node = stmt.NewAltSwitch(yyDollar[2].node, yyDollar[3].nodesWithEndToken.nodes) + } else { + yyVAL.node = stmt.NewSwitch(yyDollar[2].node, yyDollar[3].nodesWithEndToken.nodes) + } positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].nodesWithEndToken.endToken)) comments.AddComments(yyVAL.node, yyDollar[1].token.Comments()) } case 52: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:637 + //line php5/php5.y:641 { yyVAL.node = stmt.NewBreak(nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[2].token)) @@ -2737,7 +2741,7 @@ yydefault: } case 53: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:643 + //line php5/php5.y:647 { yyVAL.node = stmt.NewBreak(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2745,7 +2749,7 @@ yydefault: } case 54: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:649 + //line php5/php5.y:653 { yyVAL.node = stmt.NewContinue(nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[2].token)) @@ -2753,7 +2757,7 @@ yydefault: } case 55: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:655 + //line php5/php5.y:659 { yyVAL.node = stmt.NewContinue(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2761,7 +2765,7 @@ yydefault: } case 56: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:661 + //line php5/php5.y:665 { yyVAL.node = stmt.NewReturn(nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[2].token)) @@ -2769,7 +2773,7 @@ yydefault: } case 57: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:667 + //line php5/php5.y:671 { yyVAL.node = stmt.NewReturn(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2777,7 +2781,7 @@ yydefault: } case 58: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:673 + //line php5/php5.y:677 { yyVAL.node = stmt.NewReturn(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2785,7 +2789,7 @@ yydefault: } case 59: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:679 + //line php5/php5.y:683 { yyVAL.node = stmt.NewExpression(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -2793,7 +2797,7 @@ yydefault: } case 60: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:685 + //line php5/php5.y:689 { yyVAL.node = stmt.NewGlobal(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2801,7 +2805,7 @@ yydefault: } case 61: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:691 + //line php5/php5.y:695 { yyVAL.node = stmt.NewStatic(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2809,7 +2813,7 @@ yydefault: } case 62: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:697 + //line php5/php5.y:701 { yyVAL.node = stmt.NewEcho(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2817,7 +2821,7 @@ yydefault: } case 63: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:703 + //line php5/php5.y:707 { yyVAL.node = stmt.NewInlineHtml(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -2825,7 +2829,7 @@ yydefault: } case 64: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:709 + //line php5/php5.y:713 { yyVAL.node = stmt.NewExpression(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -2833,7 +2837,7 @@ yydefault: } case 65: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:715 + //line php5/php5.y:719 { yyVAL.node = stmt.NewUnset(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[5].token)) @@ -2841,7 +2845,7 @@ yydefault: } case 66: yyDollar = yyS[yypt-8 : yypt+1] - //line php5/php5.y:721 + //line php5/php5.y:725 { if yyDollar[6].foreachVariable.node == nil { if yyDollar[8].altSyntaxNode.isAlt { @@ -2861,7 +2865,7 @@ yydefault: } case 67: yyDollar = yyS[yypt-8 : yypt+1] - //line php5/php5.y:739 + //line php5/php5.y:743 { if yyDollar[6].foreachVariable.node == nil { if yyDollar[8].altSyntaxNode.isAlt { @@ -2881,7 +2885,7 @@ yydefault: } case 68: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:757 + //line php5/php5.y:761 { yyVAL.node = stmt.NewDeclare(yyDollar[3].list, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[5].node)) @@ -2889,7 +2893,7 @@ yydefault: } case 69: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:763 + //line php5/php5.y:767 { yyVAL.node = stmt.NewNop() positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -2897,7 +2901,7 @@ yydefault: } case 70: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:769 + //line php5/php5.y:773 { yyVAL.node = stmt.NewTry(yyDollar[3].list, yyDollar[5].list, yyDollar[6].node) @@ -2911,7 +2915,7 @@ yydefault: } case 71: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:781 + //line php5/php5.y:785 { yyVAL.node = stmt.NewThrow(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2919,7 +2923,7 @@ yydefault: } case 72: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:787 + //line php5/php5.y:791 { label := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(label, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -2931,13 +2935,13 @@ yydefault: } case 73: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:800 + //line php5/php5.y:804 { yyVAL.list = []node.Node{} } case 74: yyDollar = yyS[yypt-9 : yypt+1] - //line php5/php5.y:802 + //line php5/php5.y:806 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -2955,13 +2959,13 @@ yydefault: } case 75: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:820 + //line php5/php5.y:824 { yyVAL.node = nil } case 76: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:822 + //line php5/php5.y:826 { yyVAL.node = stmt.NewFinally(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -2969,31 +2973,31 @@ yydefault: } case 77: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:831 + //line php5/php5.y:835 { yyVAL.list = yyDollar[1].list } case 78: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:833 + //line php5/php5.y:837 { yyVAL.list = []node.Node{} } case 79: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:838 + //line php5/php5.y:842 { yyVAL.list = []node.Node{yyDollar[1].node} } case 80: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:840 + //line php5/php5.y:844 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 81: yyDollar = yyS[yypt-8 : yypt+1] - //line php5/php5.y:845 + //line php5/php5.y:849 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3009,61 +3013,61 @@ yydefault: } case 82: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:862 + //line php5/php5.y:866 { yyVAL.list = []node.Node{yyDollar[1].node} } case 83: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:864 + //line php5/php5.y:868 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 84: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:869 + //line php5/php5.y:873 { yyVAL.node = yyDollar[1].node } case 85: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:874 + //line php5/php5.y:878 { yyVAL.node = yyDollar[1].node } case 86: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:879 + //line php5/php5.y:883 { yyVAL.node = yyDollar[1].node } case 87: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:884 + //line php5/php5.y:888 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 88: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:886 + //line php5/php5.y:890 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 89: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:891 + //line php5/php5.y:895 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 90: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:893 + //line php5/php5.y:897 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 91: yyDollar = yyS[yypt-9 : yypt+1] - //line php5/php5.y:898 + //line php5/php5.y:902 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3075,7 +3079,7 @@ yydefault: } case 92: yyDollar = yyS[yypt-7 : yypt+1] - //line php5/php5.y:911 + //line php5/php5.y:915 { switch n := yyDollar[1].node.(type) { case *stmt.Class: @@ -3098,7 +3102,7 @@ yydefault: } case 93: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:932 + //line php5/php5.y:936 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3110,7 +3114,7 @@ yydefault: } case 94: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:946 + //line php5/php5.y:950 { yyVAL.node = stmt.NewClass(nil, nil, nil, nil, nil, nil, "") positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3118,7 +3122,7 @@ yydefault: } case 95: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:952 + //line php5/php5.y:956 { classModifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(classModifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3130,7 +3134,7 @@ yydefault: } case 96: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:962 + //line php5/php5.y:966 { yyVAL.node = stmt.NewTrait(nil, nil, "") positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3138,7 +3142,7 @@ yydefault: } case 97: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:968 + //line php5/php5.y:972 { classModifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(classModifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3150,85 +3154,85 @@ yydefault: } case 98: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:981 + //line php5/php5.y:985 { yyVAL.node = nil } case 99: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:983 + //line php5/php5.y:987 { yyVAL.node = yyDollar[2].node } case 100: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:988 + //line php5/php5.y:992 { yyVAL.token = yyDollar[1].token } case 101: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:993 + //line php5/php5.y:997 { yyVAL.list = nil } case 102: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:995 + //line php5/php5.y:999 { yyVAL.list = yyDollar[2].list } case 103: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1000 + //line php5/php5.y:1004 { yyVAL.list = nil } case 104: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1002 + //line php5/php5.y:1006 { yyVAL.list = yyDollar[2].list } case 105: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1007 + //line php5/php5.y:1011 { yyVAL.list = []node.Node{yyDollar[1].node} } case 106: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1009 + //line php5/php5.y:1013 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 107: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1014 + //line php5/php5.y:1018 { yyVAL.foreachVariable = foreachVariable{nil, false} } case 108: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1016 + //line php5/php5.y:1020 { yyVAL.foreachVariable = yyDollar[2].foreachVariable } case 109: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1021 + //line php5/php5.y:1025 { yyVAL.foreachVariable = foreachVariable{yyDollar[1].node, false} } case 110: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1023 + //line php5/php5.y:1027 { yyVAL.foreachVariable = foreachVariable{yyDollar[2].node, true} } case 111: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1025 + //line php5/php5.y:1029 { list := expr.NewList(yyDollar[3].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3237,39 +3241,39 @@ yydefault: } case 112: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1035 + //line php5/php5.y:1039 { yyVAL.altSyntaxNode = altSyntaxNode{yyDollar[1].node, false} } case 113: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1037 + //line php5/php5.y:1041 { yyVAL.altSyntaxNode = altSyntaxNode{stmt.NewStmtList(yyDollar[2].list), true} positions.AddPosition(yyVAL.altSyntaxNode.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) } case 114: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1046 + //line php5/php5.y:1050 { yyVAL.altSyntaxNode = altSyntaxNode{yyDollar[1].node, false} } case 115: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1048 + //line php5/php5.y:1052 { yyVAL.altSyntaxNode = altSyntaxNode{stmt.NewStmtList(yyDollar[2].list), true} positions.AddPosition(yyVAL.altSyntaxNode.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) } case 116: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1057 + //line php5/php5.y:1061 { yyVAL.node = yyDollar[1].node } case 117: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1059 + //line php5/php5.y:1063 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3277,7 +3281,7 @@ yydefault: } case 118: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1069 + //line php5/php5.y:1073 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3291,7 +3295,7 @@ yydefault: } case 119: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1081 + //line php5/php5.y:1085 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3305,37 +3309,37 @@ yydefault: } case 120: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1097 + //line php5/php5.y:1101 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 121: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1099 + //line php5/php5.y:1103 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[3].list, yyDollar[4].token} } case 122: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1101 + //line php5/php5.y:1105 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[4].token} } case 123: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1103 + //line php5/php5.y:1107 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[3].list, yyDollar[5].token} } case 124: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1109 + //line php5/php5.y:1113 { yyVAL.list = []node.Node{} } case 125: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1111 + //line php5/php5.y:1115 { _case := stmt.NewCase(yyDollar[3].node, yyDollar[5].list) positions.AddPosition(_case, positionBuilder.NewTokenNodeListPosition(yyDollar[2].token, yyDollar[5].list)) @@ -3344,7 +3348,7 @@ yydefault: } case 126: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1118 + //line php5/php5.y:1122 { _default := stmt.NewDefault(yyDollar[4].list) positions.AddPosition(_default, positionBuilder.NewTokenNodeListPosition(yyDollar[2].token, yyDollar[4].list)) @@ -3353,26 +3357,26 @@ yydefault: } case 129: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1135 + //line php5/php5.y:1139 { yyVAL.altSyntaxNode = altSyntaxNode{yyDollar[1].node, false} } case 130: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1137 + //line php5/php5.y:1141 { yyVAL.altSyntaxNode = altSyntaxNode{stmt.NewStmtList(yyDollar[2].list), true} positions.AddPosition(yyVAL.altSyntaxNode.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) } case 131: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1147 + //line php5/php5.y:1151 { yyVAL.list = nil } case 132: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1149 + //line php5/php5.y:1153 { _elseIf := stmt.NewElseIf(yyDollar[3].node, yyDollar[4].node) positions.AddPosition(_elseIf, positionBuilder.NewTokenNodePosition(yyDollar[2].token, yyDollar[4].node)) @@ -3382,13 +3386,13 @@ yydefault: } case 133: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1161 + //line php5/php5.y:1165 { yyVAL.list = nil } case 134: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1163 + //line php5/php5.y:1167 { stmts := stmt.NewStmtList(yyDollar[5].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[5].list)) @@ -3401,13 +3405,13 @@ yydefault: } case 135: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1178 + //line php5/php5.y:1182 { yyVAL.node = nil } case 136: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1180 + //line php5/php5.y:1184 { yyVAL.node = stmt.NewElse(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3415,13 +3419,13 @@ yydefault: } case 137: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1190 + //line php5/php5.y:1194 { yyVAL.node = nil } case 138: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1192 + //line php5/php5.y:1196 { stmts := stmt.NewStmtList(yyDollar[3].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[3].list)) @@ -3432,31 +3436,31 @@ yydefault: } case 139: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1205 + //line php5/php5.y:1209 { yyVAL.list = yyDollar[1].list } case 140: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1207 + //line php5/php5.y:1211 { yyVAL.list = nil } case 141: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1212 + //line php5/php5.y:1216 { yyVAL.list = []node.Node{yyDollar[1].node} } case 142: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1214 + //line php5/php5.y:1218 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 143: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1219 + //line php5/php5.y:1223 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3484,7 +3488,7 @@ yydefault: } case 144: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:1245 + //line php5/php5.y:1249 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3512,13 +3516,13 @@ yydefault: } case 145: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1275 + //line php5/php5.y:1279 { yyVAL.node = nil } case 146: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1277 + //line php5/php5.y:1281 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3526,7 +3530,7 @@ yydefault: } case 147: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1283 + //line php5/php5.y:1287 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3534,25 +3538,25 @@ yydefault: } case 148: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1289 + //line php5/php5.y:1293 { yyVAL.node = yyDollar[1].node } case 149: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1295 + //line php5/php5.y:1299 { yyVAL.nodesWithEndToken = &nodesWithEndToken{[]node.Node{}, yyDollar[2].token} } case 150: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1297 + //line php5/php5.y:1301 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 151: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1299 + //line php5/php5.y:1303 { arg := node.NewArgument(yyDollar[2].node, false, false) positions.AddPosition(arg, positionBuilder.NewNodePosition(yyDollar[2].node)) @@ -3562,19 +3566,19 @@ yydefault: } case 152: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1311 + //line php5/php5.y:1315 { yyVAL.list = []node.Node{yyDollar[1].node} } case 153: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1313 + //line php5/php5.y:1317 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 154: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1318 + //line php5/php5.y:1322 { yyVAL.node = node.NewArgument(yyDollar[1].node, false, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -3582,7 +3586,7 @@ yydefault: } case 155: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1324 + //line php5/php5.y:1328 { yyVAL.node = node.NewArgument(yyDollar[1].node, false, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -3590,7 +3594,7 @@ yydefault: } case 156: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1330 + //line php5/php5.y:1334 { yyVAL.node = node.NewArgument(yyDollar[2].node, false, true) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[2].node)) @@ -3598,7 +3602,7 @@ yydefault: } case 157: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1336 + //line php5/php5.y:1340 { yyVAL.node = node.NewArgument(yyDollar[2].node, true, false) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3606,19 +3610,19 @@ yydefault: } case 158: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1345 + //line php5/php5.y:1349 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 159: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1347 + //line php5/php5.y:1351 { yyVAL.list = []node.Node{yyDollar[1].node} } case 160: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1353 + //line php5/php5.y:1357 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3630,7 +3634,7 @@ yydefault: } case 161: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1363 + //line php5/php5.y:1367 { yyVAL.node = expr.NewVariable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3638,7 +3642,7 @@ yydefault: } case 162: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1369 + //line php5/php5.y:1373 { yyVAL.node = expr.NewVariable(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3646,7 +3650,7 @@ yydefault: } case 163: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1379 + //line php5/php5.y:1383 { identifier := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3665,7 +3669,7 @@ yydefault: } case 164: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1396 + //line php5/php5.y:1400 { identifier := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3684,7 +3688,7 @@ yydefault: } case 165: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1413 + //line php5/php5.y:1417 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3703,7 +3707,7 @@ yydefault: } case 166: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1430 + //line php5/php5.y:1434 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3722,19 +3726,19 @@ yydefault: } case 167: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1452 + //line php5/php5.y:1456 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 168: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1454 + //line php5/php5.y:1458 { yyVAL.list = []node.Node{} } case 169: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1460 + //line php5/php5.y:1464 { yyVAL.node = stmt.NewPropertyList(yyDollar[1].list, yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListTokenPosition(yyDollar[1].list, yyDollar[3].token)) @@ -3742,19 +3746,19 @@ yydefault: } case 170: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1466 + //line php5/php5.y:1470 { yyVAL.node = yyDollar[1].node } case 171: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1468 + //line php5/php5.y:1472 { yyVAL.node = yyDollar[1].node } case 172: yyDollar = yyS[yypt-8 : yypt+1] - //line php5/php5.y:1470 + //line php5/php5.y:1474 { name := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3766,7 +3770,7 @@ yydefault: } case 173: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1483 + //line php5/php5.y:1487 { yyVAL.node = stmt.NewTraitUse(yyDollar[2].list, yyDollar[3].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].nodesWithEndToken.endToken)) @@ -3774,67 +3778,67 @@ yydefault: } case 174: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1492 + //line php5/php5.y:1496 { yyVAL.list = []node.Node{yyDollar[1].node} } case 175: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1494 + //line php5/php5.y:1498 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 176: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1499 + //line php5/php5.y:1503 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[1].token} } case 177: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1501 + //line php5/php5.y:1505 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 178: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1506 + //line php5/php5.y:1510 { yyVAL.list = nil } case 179: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1508 + //line php5/php5.y:1512 { yyVAL.list = yyDollar[1].list } case 180: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1513 + //line php5/php5.y:1517 { yyVAL.list = []node.Node{yyDollar[1].node} } case 181: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1515 + //line php5/php5.y:1519 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 182: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1520 + //line php5/php5.y:1524 { yyVAL.node = yyDollar[1].node } case 183: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1522 + //line php5/php5.y:1526 { yyVAL.node = yyDollar[1].node } case 184: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1527 + //line php5/php5.y:1531 { yyVAL.node = stmt.NewTraitUsePrecedence(yyDollar[1].node, yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeNodeListPosition(yyDollar[1].node, yyDollar[3].list)) @@ -3842,19 +3846,19 @@ yydefault: } case 185: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1536 + //line php5/php5.y:1540 { yyVAL.list = []node.Node{yyDollar[1].node} } case 186: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1538 + //line php5/php5.y:1542 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 187: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1543 + //line php5/php5.y:1547 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3866,13 +3870,13 @@ yydefault: } case 188: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1553 + //line php5/php5.y:1557 { yyVAL.node = yyDollar[1].node } case 189: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1558 + //line php5/php5.y:1562 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3884,7 +3888,7 @@ yydefault: } case 190: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1571 + //line php5/php5.y:1575 { alias := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3896,7 +3900,7 @@ yydefault: } case 191: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1581 + //line php5/php5.y:1585 { yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, yyDollar[3].node, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -3904,37 +3908,37 @@ yydefault: } case 192: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1590 + //line php5/php5.y:1594 { yyVAL.node = nil } case 193: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1592 + //line php5/php5.y:1596 { yyVAL.node = yyDollar[1].node } case 194: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1597 + //line php5/php5.y:1601 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[1].token} } case 195: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1599 + //line php5/php5.y:1603 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 196: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1604 + //line php5/php5.y:1608 { yyVAL.list = yyDollar[1].list } case 197: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1606 + //line php5/php5.y:1610 { modifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(modifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3944,31 +3948,31 @@ yydefault: } case 198: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1617 + //line php5/php5.y:1621 { yyVAL.list = nil } case 199: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1619 + //line php5/php5.y:1623 { yyVAL.list = yyDollar[1].list } case 200: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1624 + //line php5/php5.y:1628 { yyVAL.list = []node.Node{yyDollar[1].node} } case 201: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1626 + //line php5/php5.y:1630 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 202: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1631 + //line php5/php5.y:1635 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3976,7 +3980,7 @@ yydefault: } case 203: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1637 + //line php5/php5.y:1641 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3984,7 +3988,7 @@ yydefault: } case 204: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1643 + //line php5/php5.y:1647 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3992,7 +3996,7 @@ yydefault: } case 205: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1649 + //line php5/php5.y:1653 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4000,7 +4004,7 @@ yydefault: } case 206: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1655 + //line php5/php5.y:1659 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4008,7 +4012,7 @@ yydefault: } case 207: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1661 + //line php5/php5.y:1665 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4016,7 +4020,7 @@ yydefault: } case 208: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1670 + //line php5/php5.y:1674 { identifier := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -4034,7 +4038,7 @@ yydefault: } case 209: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1686 + //line php5/php5.y:1690 { identifier := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -4052,7 +4056,7 @@ yydefault: } case 210: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1702 + //line php5/php5.y:1706 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4070,7 +4074,7 @@ yydefault: } case 211: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1718 + //line php5/php5.y:1722 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4088,7 +4092,7 @@ yydefault: } case 212: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:1737 + //line php5/php5.y:1741 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -4105,7 +4109,7 @@ yydefault: } case 213: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1752 + //line php5/php5.y:1756 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -4121,55 +4125,55 @@ yydefault: } case 214: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1769 + //line php5/php5.y:1773 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 215: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1771 + //line php5/php5.y:1775 { yyVAL.list = []node.Node{yyDollar[1].node} } case 216: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1777 + //line php5/php5.y:1781 { yyVAL.list = nil } case 217: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1779 + //line php5/php5.y:1783 { yyVAL.list = yyDollar[1].list } case 218: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1784 + //line php5/php5.y:1788 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 219: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1786 + //line php5/php5.y:1790 { yyVAL.list = []node.Node{yyDollar[1].node} } case 220: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1791 + //line php5/php5.y:1795 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].list...) } case 221: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1793 + //line php5/php5.y:1797 { yyVAL.list = yyDollar[1].list } case 222: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1798 + //line php5/php5.y:1802 { fetch := expr.NewArrayDimFetch(nil, yyDollar[3].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -4178,7 +4182,7 @@ yydefault: } case 223: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1805 + //line php5/php5.y:1809 { fetch := expr.NewArrayDimFetch(nil, yyDollar[2].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[2].node)) @@ -4187,37 +4191,37 @@ yydefault: } case 224: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1815 + //line php5/php5.y:1819 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].list...) } case 225: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1817 + //line php5/php5.y:1821 { yyVAL.list = yyDollar[1].list } case 226: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1819 + //line php5/php5.y:1823 { yyVAL.list = yyDollar[1].list } case 227: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:1824 + //line php5/php5.y:1828 { yyVAL.list = nil } case 228: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:1826 + //line php5/php5.y:1830 { yyVAL.list = yyDollar[1].list } case 229: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1831 + //line php5/php5.y:1835 { if yyDollar[3].nodesWithEndToken != nil { yyVAL.node = expr.NewNew(yyDollar[2].node, yyDollar[3].nodesWithEndToken.nodes) @@ -4231,7 +4235,7 @@ yydefault: } case 230: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:1846 + //line php5/php5.y:1850 { list := expr.NewList(yyDollar[3].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -4243,7 +4247,7 @@ yydefault: } case 231: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1856 + //line php5/php5.y:1860 { yyVAL.node = assign_op.NewAssign(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4251,7 +4255,7 @@ yydefault: } case 232: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:1862 + //line php5/php5.y:1866 { yyVAL.node = assign_op.NewAssignRef(yyDollar[1].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -4259,7 +4263,7 @@ yydefault: } case 233: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:1868 + //line php5/php5.y:1872 { _new := expr.NewNew(yyDollar[5].node, nil) positions.AddPosition(_new, positionBuilder.NewTokenNodePosition(yyDollar[4].token, yyDollar[5].node)) @@ -4276,7 +4280,7 @@ yydefault: } case 234: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1883 + //line php5/php5.y:1887 { yyVAL.node = expr.NewClone(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4284,7 +4288,7 @@ yydefault: } case 235: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1889 + //line php5/php5.y:1893 { yyVAL.node = assign_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4292,7 +4296,7 @@ yydefault: } case 236: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1895 + //line php5/php5.y:1899 { yyVAL.node = assign_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4300,7 +4304,7 @@ yydefault: } case 237: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1901 + //line php5/php5.y:1905 { yyVAL.node = assign_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4308,7 +4312,7 @@ yydefault: } case 238: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1907 + //line php5/php5.y:1911 { yyVAL.node = assign_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4316,7 +4320,7 @@ yydefault: } case 239: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1913 + //line php5/php5.y:1917 { yyVAL.node = assign_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4324,7 +4328,7 @@ yydefault: } case 240: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1919 + //line php5/php5.y:1923 { yyVAL.node = assign_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4332,7 +4336,7 @@ yydefault: } case 241: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1925 + //line php5/php5.y:1929 { yyVAL.node = assign_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4340,7 +4344,7 @@ yydefault: } case 242: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1931 + //line php5/php5.y:1935 { yyVAL.node = assign_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4348,7 +4352,7 @@ yydefault: } case 243: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1937 + //line php5/php5.y:1941 { yyVAL.node = assign_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4356,7 +4360,7 @@ yydefault: } case 244: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1943 + //line php5/php5.y:1947 { yyVAL.node = assign_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4364,7 +4368,7 @@ yydefault: } case 245: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1949 + //line php5/php5.y:1953 { yyVAL.node = assign_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4372,7 +4376,7 @@ yydefault: } case 246: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1955 + //line php5/php5.y:1959 { yyVAL.node = assign_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4380,7 +4384,7 @@ yydefault: } case 247: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1961 + //line php5/php5.y:1965 { yyVAL.node = expr.NewPostInc(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -4388,7 +4392,7 @@ yydefault: } case 248: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1967 + //line php5/php5.y:1971 { yyVAL.node = expr.NewPreInc(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4396,7 +4400,7 @@ yydefault: } case 249: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1973 + //line php5/php5.y:1977 { yyVAL.node = expr.NewPostDec(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -4404,7 +4408,7 @@ yydefault: } case 250: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:1979 + //line php5/php5.y:1983 { yyVAL.node = expr.NewPreDec(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4412,7 +4416,7 @@ yydefault: } case 251: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1985 + //line php5/php5.y:1989 { yyVAL.node = binary_op.NewBooleanOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4420,7 +4424,7 @@ yydefault: } case 252: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1991 + //line php5/php5.y:1995 { yyVAL.node = binary_op.NewBooleanAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4428,7 +4432,7 @@ yydefault: } case 253: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:1997 + //line php5/php5.y:2001 { yyVAL.node = binary_op.NewLogicalOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4436,7 +4440,7 @@ yydefault: } case 254: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2003 + //line php5/php5.y:2007 { yyVAL.node = binary_op.NewLogicalAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4444,7 +4448,7 @@ yydefault: } case 255: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2009 + //line php5/php5.y:2013 { yyVAL.node = binary_op.NewLogicalXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4452,7 +4456,7 @@ yydefault: } case 256: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2015 + //line php5/php5.y:2019 { yyVAL.node = binary_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4460,7 +4464,7 @@ yydefault: } case 257: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2021 + //line php5/php5.y:2025 { yyVAL.node = binary_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4468,7 +4472,7 @@ yydefault: } case 258: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2027 + //line php5/php5.y:2031 { yyVAL.node = binary_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4476,7 +4480,7 @@ yydefault: } case 259: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2033 + //line php5/php5.y:2037 { yyVAL.node = binary_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4484,7 +4488,7 @@ yydefault: } case 260: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2039 + //line php5/php5.y:2043 { yyVAL.node = binary_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4492,7 +4496,7 @@ yydefault: } case 261: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2045 + //line php5/php5.y:2049 { yyVAL.node = binary_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4500,7 +4504,7 @@ yydefault: } case 262: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2051 + //line php5/php5.y:2055 { yyVAL.node = binary_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4508,7 +4512,7 @@ yydefault: } case 263: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2057 + //line php5/php5.y:2061 { yyVAL.node = binary_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4516,7 +4520,7 @@ yydefault: } case 264: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2063 + //line php5/php5.y:2067 { yyVAL.node = binary_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4524,7 +4528,7 @@ yydefault: } case 265: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2069 + //line php5/php5.y:2073 { yyVAL.node = binary_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4532,7 +4536,7 @@ yydefault: } case 266: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2075 + //line php5/php5.y:2079 { yyVAL.node = binary_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4540,7 +4544,7 @@ yydefault: } case 267: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2081 + //line php5/php5.y:2085 { yyVAL.node = binary_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4548,7 +4552,7 @@ yydefault: } case 268: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2087 + //line php5/php5.y:2091 { yyVAL.node = expr.NewUnaryPlus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4556,7 +4560,7 @@ yydefault: } case 269: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2093 + //line php5/php5.y:2097 { yyVAL.node = expr.NewUnaryMinus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4564,7 +4568,7 @@ yydefault: } case 270: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2099 + //line php5/php5.y:2103 { yyVAL.node = expr.NewBooleanNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4572,7 +4576,7 @@ yydefault: } case 271: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2105 + //line php5/php5.y:2109 { yyVAL.node = expr.NewBitwiseNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4580,7 +4584,7 @@ yydefault: } case 272: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2111 + //line php5/php5.y:2115 { yyVAL.node = binary_op.NewIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4588,7 +4592,7 @@ yydefault: } case 273: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2117 + //line php5/php5.y:2121 { yyVAL.node = binary_op.NewNotIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4596,7 +4600,7 @@ yydefault: } case 274: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2123 + //line php5/php5.y:2127 { yyVAL.node = binary_op.NewEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4604,7 +4608,7 @@ yydefault: } case 275: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2129 + //line php5/php5.y:2133 { yyVAL.node = binary_op.NewNotEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4612,7 +4616,7 @@ yydefault: } case 276: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2135 + //line php5/php5.y:2139 { yyVAL.node = binary_op.NewSmaller(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4620,7 +4624,7 @@ yydefault: } case 277: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2141 + //line php5/php5.y:2145 { yyVAL.node = binary_op.NewSmallerOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4628,7 +4632,7 @@ yydefault: } case 278: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2147 + //line php5/php5.y:2151 { yyVAL.node = binary_op.NewGreater(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4636,7 +4640,7 @@ yydefault: } case 279: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2153 + //line php5/php5.y:2157 { yyVAL.node = binary_op.NewGreaterOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4644,7 +4648,7 @@ yydefault: } case 280: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2159 + //line php5/php5.y:2163 { yyVAL.node = expr.NewInstanceOf(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4652,19 +4656,19 @@ yydefault: } case 281: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2165 + //line php5/php5.y:2169 { yyVAL.node = yyDollar[1].node } case 282: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2167 + //line php5/php5.y:2171 { yyVAL.node = yyDollar[1].node } case 283: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2169 + //line php5/php5.y:2173 { yyVAL.node = yyDollar[2].node @@ -4692,7 +4696,7 @@ yydefault: } case 284: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:2195 + //line php5/php5.y:2199 { yyVAL.node = expr.NewTernary(yyDollar[1].node, yyDollar[3].node, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[5].node)) @@ -4700,7 +4704,7 @@ yydefault: } case 285: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2201 + //line php5/php5.y:2205 { yyVAL.node = expr.NewTernary(yyDollar[1].node, nil, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -4708,13 +4712,13 @@ yydefault: } case 286: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2207 + //line php5/php5.y:2211 { yyVAL.node = yyDollar[1].node } case 287: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2209 + //line php5/php5.y:2213 { yyVAL.node = cast.NewCastInt(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4722,7 +4726,7 @@ yydefault: } case 288: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2215 + //line php5/php5.y:2219 { yyVAL.node = cast.NewCastDouble(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4730,7 +4734,7 @@ yydefault: } case 289: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2221 + //line php5/php5.y:2225 { yyVAL.node = cast.NewCastString(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4738,7 +4742,7 @@ yydefault: } case 290: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2227 + //line php5/php5.y:2231 { yyVAL.node = cast.NewCastArray(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4746,7 +4750,7 @@ yydefault: } case 291: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2233 + //line php5/php5.y:2237 { yyVAL.node = cast.NewCastObject(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4754,7 +4758,7 @@ yydefault: } case 292: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2239 + //line php5/php5.y:2243 { yyVAL.node = cast.NewCastBool(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4762,7 +4766,7 @@ yydefault: } case 293: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2245 + //line php5/php5.y:2249 { yyVAL.node = cast.NewCastUnset(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4770,7 +4774,7 @@ yydefault: } case 294: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2251 + //line php5/php5.y:2255 { if strings.EqualFold(yyDollar[1].token.Value, "die") { yyVAL.node = expr.NewDie(yyDollar[2].node) @@ -4782,7 +4786,7 @@ yydefault: } case 295: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2261 + //line php5/php5.y:2265 { yyVAL.node = expr.NewErrorSuppress(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4790,25 +4794,25 @@ yydefault: } case 296: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2267 + //line php5/php5.y:2271 { yyVAL.node = yyDollar[1].node } case 297: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2269 + //line php5/php5.y:2273 { yyVAL.node = yyDollar[1].node } case 298: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2271 + //line php5/php5.y:2275 { yyVAL.node = yyDollar[1].node } case 299: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2273 + //line php5/php5.y:2277 { yyVAL.node = expr.NewShellExec(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4816,7 +4820,7 @@ yydefault: } case 300: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2279 + //line php5/php5.y:2283 { yyVAL.node = expr.NewPrint(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4824,7 +4828,7 @@ yydefault: } case 301: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2285 + //line php5/php5.y:2289 { yyVAL.node = expr.NewYield(nil, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4832,7 +4836,7 @@ yydefault: } case 302: yyDollar = yyS[yypt-9 : yypt+1] - //line php5/php5.y:2291 + //line php5/php5.y:2295 { yyVAL.node = expr.NewClosure(yyDollar[4].list, yyDollar[6].list, nil, yyDollar[8].list, false, yyDollar[2].boolWithToken.value, "") positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[9].token)) @@ -4841,7 +4845,7 @@ yydefault: } case 303: yyDollar = yyS[yypt-10 : yypt+1] - //line php5/php5.y:2298 + //line php5/php5.y:2302 { yyVAL.node = expr.NewClosure(yyDollar[5].list, yyDollar[7].list, nil, yyDollar[9].list, true, yyDollar[3].boolWithToken.value, "") positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[10].token)) @@ -4850,7 +4854,7 @@ yydefault: } case 304: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2308 + //line php5/php5.y:2312 { yyVAL.node = expr.NewYield(nil, yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4858,7 +4862,7 @@ yydefault: } case 305: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2314 + //line php5/php5.y:2318 { yyVAL.node = expr.NewYield(nil, yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4866,7 +4870,7 @@ yydefault: } case 306: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2320 + //line php5/php5.y:2324 { yyVAL.node = expr.NewYield(yyDollar[2].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[4].node)) @@ -4874,7 +4878,7 @@ yydefault: } case 307: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2326 + //line php5/php5.y:2330 { yyVAL.node = expr.NewYield(yyDollar[2].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[4].node)) @@ -4882,7 +4886,7 @@ yydefault: } case 308: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2335 + //line php5/php5.y:2339 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -4890,7 +4894,7 @@ yydefault: } case 309: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2341 + //line php5/php5.y:2345 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -4898,7 +4902,7 @@ yydefault: } case 310: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2347 + //line php5/php5.y:2351 { str := scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(str, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4910,7 +4914,7 @@ yydefault: } case 311: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2357 + //line php5/php5.y:2361 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -4918,7 +4922,7 @@ yydefault: } case 312: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2366 + //line php5/php5.y:2370 { yyVAL.node = expr.NewArray(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -4926,7 +4930,7 @@ yydefault: } case 313: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2372 + //line php5/php5.y:2376 { yyVAL.node = expr.NewShortArray(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4934,25 +4938,25 @@ yydefault: } case 314: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2381 + //line php5/php5.y:2385 { yyVAL.token = yyDollar[1].token } case 315: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:2386 + //line php5/php5.y:2390 { yyVAL.list = []node.Node{} } case 316: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2388 + //line php5/php5.y:2392 { yyVAL.list = yyDollar[3].list } case 317: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2393 + //line php5/php5.y:2397 { identifier := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -4970,7 +4974,7 @@ yydefault: } case 318: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2409 + //line php5/php5.y:2413 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -4988,7 +4992,7 @@ yydefault: } case 319: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2425 + //line php5/php5.y:2429 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5006,7 +5010,7 @@ yydefault: } case 320: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2441 + //line php5/php5.y:2445 { identifier := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5024,7 +5028,7 @@ yydefault: } case 321: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2460 + //line php5/php5.y:2464 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -5036,7 +5040,7 @@ yydefault: } case 322: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2470 + //line php5/php5.y:2474 { funcName := name.NewRelative(yyDollar[3].list) positions.AddPosition(funcName, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[3].list)) @@ -5048,7 +5052,7 @@ yydefault: } case 323: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2480 + //line php5/php5.y:2484 { funcName := name.NewFullyQualified(yyDollar[2].list) positions.AddPosition(funcName, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[2].list)) @@ -5060,7 +5064,7 @@ yydefault: } case 324: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2490 + //line php5/php5.y:2494 { yyVAL.node = expr.NewStaticCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -5068,7 +5072,7 @@ yydefault: } case 325: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2496 + //line php5/php5.y:2500 { yyVAL.node = expr.NewStaticCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -5076,7 +5080,7 @@ yydefault: } case 326: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2502 + //line php5/php5.y:2506 { yyVAL.node = expr.NewStaticCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -5084,7 +5088,7 @@ yydefault: } case 327: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2508 + //line php5/php5.y:2512 { yyVAL.node = expr.NewStaticCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -5092,7 +5096,7 @@ yydefault: } case 328: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2514 + //line php5/php5.y:2518 { yyVAL.node = expr.NewFunctionCall(yyDollar[1].node, yyDollar[2].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].nodesWithEndToken.endToken)) @@ -5100,7 +5104,7 @@ yydefault: } case 329: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2523 + //line php5/php5.y:2527 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5108,7 +5112,7 @@ yydefault: } case 330: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2529 + //line php5/php5.y:2533 { yyVAL.node = name.NewName(yyDollar[1].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -5116,7 +5120,7 @@ yydefault: } case 331: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2535 + //line php5/php5.y:2539 { yyVAL.node = name.NewRelative(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[3].list)) @@ -5124,7 +5128,7 @@ yydefault: } case 332: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2541 + //line php5/php5.y:2545 { yyVAL.node = name.NewFullyQualified(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[2].list)) @@ -5132,7 +5136,7 @@ yydefault: } case 333: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2550 + //line php5/php5.y:2554 { yyVAL.node = name.NewName(yyDollar[1].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -5140,7 +5144,7 @@ yydefault: } case 334: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2556 + //line php5/php5.y:2560 { yyVAL.node = name.NewRelative(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[3].list)) @@ -5148,7 +5152,7 @@ yydefault: } case 335: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2562 + //line php5/php5.y:2566 { yyVAL.node = name.NewFullyQualified(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[2].list)) @@ -5156,19 +5160,19 @@ yydefault: } case 336: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2571 + //line php5/php5.y:2575 { yyVAL.node = yyDollar[1].node } case 337: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2573 + //line php5/php5.y:2577 { yyVAL.node = yyDollar[1].node } case 338: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2578 + //line php5/php5.y:2582 { yyVAL.node = yyDollar[1].node @@ -5206,79 +5210,79 @@ yydefault: } case 339: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2614 + //line php5/php5.y:2618 { yyVAL.node = yyDollar[1].node } case 340: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2620 + //line php5/php5.y:2624 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].list...) } case 341: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:2622 + //line php5/php5.y:2626 { yyVAL.list = []node.Node{} } case 342: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2628 + //line php5/php5.y:2632 { yyVAL.list = yyDollar[2].list } case 343: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:2633 + //line php5/php5.y:2637 { yyVAL.node = nil } case 344: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2635 + //line php5/php5.y:2639 { yyVAL.node = nil } case 345: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2637 + //line php5/php5.y:2641 { yyVAL.node = yyDollar[1].node } case 346: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:2642 + //line php5/php5.y:2646 { yyVAL.list = []node.Node{} } case 347: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2644 + //line php5/php5.y:2648 { yyVAL.list = []node.Node{scalar.NewEncapsedStringPart(yyDollar[1].token.Value)} } case 348: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2646 + //line php5/php5.y:2650 { yyVAL.list = yyDollar[1].list } case 349: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:2651 + //line php5/php5.y:2655 { yyVAL.nodesWithEndToken = nil } case 350: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2653 + //line php5/php5.y:2657 { yyVAL.nodesWithEndToken = yyDollar[1].nodesWithEndToken } case 351: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2658 + //line php5/php5.y:2662 { yyVAL.node = scalar.NewLnumber(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5286,7 +5290,7 @@ yydefault: } case 352: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2664 + //line php5/php5.y:2668 { yyVAL.node = scalar.NewDnumber(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5294,7 +5298,7 @@ yydefault: } case 353: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2670 + //line php5/php5.y:2674 { yyVAL.node = scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5302,7 +5306,7 @@ yydefault: } case 354: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2676 + //line php5/php5.y:2680 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5310,7 +5314,7 @@ yydefault: } case 355: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2682 + //line php5/php5.y:2686 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5318,7 +5322,7 @@ yydefault: } case 356: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2688 + //line php5/php5.y:2692 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5326,7 +5330,7 @@ yydefault: } case 357: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2694 + //line php5/php5.y:2698 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5334,7 +5338,7 @@ yydefault: } case 358: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2700 + //line php5/php5.y:2704 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5342,7 +5346,7 @@ yydefault: } case 359: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2706 + //line php5/php5.y:2710 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5350,7 +5354,7 @@ yydefault: } case 360: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2712 + //line php5/php5.y:2716 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5358,7 +5362,7 @@ yydefault: } case 361: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2718 + //line php5/php5.y:2722 { yyVAL.node = scalar.NewString(yyDollar[2].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) /* TODO: mark as Heredoc*/ @@ -5366,7 +5370,7 @@ yydefault: } case 362: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2723 + //line php5/php5.y:2727 { yyVAL.node = scalar.NewEncapsed(nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[2].token)) @@ -5374,7 +5378,7 @@ yydefault: } case 363: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2732 + //line php5/php5.y:2736 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -5386,25 +5390,25 @@ yydefault: } case 364: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2745 + //line php5/php5.y:2749 { yyVAL.node = yyDollar[1].node } case 365: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2750 + //line php5/php5.y:2754 { yyVAL.node = yyDollar[1].node } case 366: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2752 + //line php5/php5.y:2756 { yyVAL.node = yyDollar[1].node } case 367: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2754 + //line php5/php5.y:2758 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -5416,7 +5420,7 @@ yydefault: } case 368: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2764 + //line php5/php5.y:2768 { name := name.NewRelative(yyDollar[3].list) positions.AddPosition(name, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[3].list)) @@ -5428,7 +5432,7 @@ yydefault: } case 369: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2774 + //line php5/php5.y:2778 { name := name.NewFullyQualified(yyDollar[2].list) positions.AddPosition(name, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[2].list)) @@ -5440,7 +5444,7 @@ yydefault: } case 370: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2784 + //line php5/php5.y:2788 { yyVAL.node = expr.NewArray(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5448,7 +5452,7 @@ yydefault: } case 371: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2790 + //line php5/php5.y:2794 { yyVAL.node = expr.NewShortArray(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5456,13 +5460,13 @@ yydefault: } case 372: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2796 + //line php5/php5.y:2800 { yyVAL.node = yyDollar[1].node } case 373: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2798 + //line php5/php5.y:2802 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5470,13 +5474,13 @@ yydefault: } case 374: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:2804 + //line php5/php5.y:2808 { yyVAL.node = yyDollar[1].node } case 375: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2809 + //line php5/php5.y:2813 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5484,7 +5488,7 @@ yydefault: } case 376: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2815 + //line php5/php5.y:2819 { yyVAL.node = binary_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5492,7 +5496,7 @@ yydefault: } case 377: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2821 + //line php5/php5.y:2825 { yyVAL.node = binary_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5500,7 +5504,7 @@ yydefault: } case 378: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2827 + //line php5/php5.y:2831 { yyVAL.node = binary_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5508,7 +5512,7 @@ yydefault: } case 379: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2833 + //line php5/php5.y:2837 { yyVAL.node = binary_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5516,7 +5520,7 @@ yydefault: } case 380: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2839 + //line php5/php5.y:2843 { yyVAL.node = binary_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5524,7 +5528,7 @@ yydefault: } case 381: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2845 + //line php5/php5.y:2849 { yyVAL.node = binary_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5532,7 +5536,7 @@ yydefault: } case 382: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2851 + //line php5/php5.y:2855 { yyVAL.node = expr.NewBooleanNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5540,7 +5544,7 @@ yydefault: } case 383: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2857 + //line php5/php5.y:2861 { yyVAL.node = expr.NewBitwiseNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5548,7 +5552,7 @@ yydefault: } case 384: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2863 + //line php5/php5.y:2867 { yyVAL.node = binary_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5556,7 +5560,7 @@ yydefault: } case 385: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2869 + //line php5/php5.y:2873 { yyVAL.node = binary_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5564,7 +5568,7 @@ yydefault: } case 386: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2875 + //line php5/php5.y:2879 { yyVAL.node = binary_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5572,7 +5576,7 @@ yydefault: } case 387: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2881 + //line php5/php5.y:2885 { yyVAL.node = binary_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5580,7 +5584,7 @@ yydefault: } case 388: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2887 + //line php5/php5.y:2891 { yyVAL.node = binary_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5588,7 +5592,7 @@ yydefault: } case 389: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2893 + //line php5/php5.y:2897 { yyVAL.node = binary_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5596,7 +5600,7 @@ yydefault: } case 390: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2899 + //line php5/php5.y:2903 { yyVAL.node = binary_op.NewLogicalXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5604,7 +5608,7 @@ yydefault: } case 391: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2905 + //line php5/php5.y:2909 { yyVAL.node = binary_op.NewLogicalAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5612,7 +5616,7 @@ yydefault: } case 392: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2911 + //line php5/php5.y:2915 { yyVAL.node = binary_op.NewLogicalOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5620,7 +5624,7 @@ yydefault: } case 393: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2917 + //line php5/php5.y:2921 { yyVAL.node = binary_op.NewBooleanAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5628,7 +5632,7 @@ yydefault: } case 394: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2923 + //line php5/php5.y:2927 { yyVAL.node = binary_op.NewBooleanOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5636,7 +5640,7 @@ yydefault: } case 395: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2929 + //line php5/php5.y:2933 { yyVAL.node = binary_op.NewIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5644,7 +5648,7 @@ yydefault: } case 396: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2935 + //line php5/php5.y:2939 { yyVAL.node = binary_op.NewNotIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5652,7 +5656,7 @@ yydefault: } case 397: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2941 + //line php5/php5.y:2945 { yyVAL.node = binary_op.NewEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5660,7 +5664,7 @@ yydefault: } case 398: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2947 + //line php5/php5.y:2951 { yyVAL.node = binary_op.NewNotEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5668,7 +5672,7 @@ yydefault: } case 399: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2953 + //line php5/php5.y:2957 { yyVAL.node = binary_op.NewSmaller(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5676,7 +5680,7 @@ yydefault: } case 400: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2959 + //line php5/php5.y:2963 { yyVAL.node = binary_op.NewGreater(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5684,7 +5688,7 @@ yydefault: } case 401: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2965 + //line php5/php5.y:2969 { yyVAL.node = binary_op.NewSmallerOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5692,7 +5696,7 @@ yydefault: } case 402: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:2971 + //line php5/php5.y:2975 { yyVAL.node = binary_op.NewGreaterOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5700,7 +5704,7 @@ yydefault: } case 403: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:2977 + //line php5/php5.y:2981 { yyVAL.node = expr.NewTernary(yyDollar[1].node, nil, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -5708,7 +5712,7 @@ yydefault: } case 404: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:2983 + //line php5/php5.y:2987 { yyVAL.node = expr.NewTernary(yyDollar[1].node, yyDollar[3].node, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[5].node)) @@ -5716,7 +5720,7 @@ yydefault: } case 405: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2989 + //line php5/php5.y:2993 { yyVAL.node = expr.NewUnaryPlus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5724,7 +5728,7 @@ yydefault: } case 406: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:2995 + //line php5/php5.y:2999 { yyVAL.node = expr.NewUnaryMinus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5732,19 +5736,19 @@ yydefault: } case 407: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3001 + //line php5/php5.y:3005 { yyVAL.node = yyDollar[2].node } case 408: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3006 + //line php5/php5.y:3010 { yyVAL.node = yyDollar[1].node } case 409: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3008 + //line php5/php5.y:3012 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -5756,7 +5760,7 @@ yydefault: } case 410: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3018 + //line php5/php5.y:3022 { name := name.NewRelative(yyDollar[3].list) positions.AddPosition(name, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[3].list)) @@ -5768,7 +5772,7 @@ yydefault: } case 411: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3028 + //line php5/php5.y:3032 { name := name.NewFullyQualified(yyDollar[2].list) positions.AddPosition(name, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[2].list)) @@ -5780,7 +5784,7 @@ yydefault: } case 412: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3041 + //line php5/php5.y:3045 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5792,25 +5796,25 @@ yydefault: } case 413: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3051 + //line php5/php5.y:3055 { yyVAL.node = yyDollar[1].node } case 414: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3053 + //line php5/php5.y:3057 { yyVAL.node = yyDollar[1].node } case 415: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3055 + //line php5/php5.y:3059 { yyVAL.node = yyDollar[1].node } case 416: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3057 + //line php5/php5.y:3061 { yyVAL.node = scalar.NewEncapsed(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5818,7 +5822,7 @@ yydefault: } case 417: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3063 + //line php5/php5.y:3067 { yyVAL.node = scalar.NewEncapsed(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5826,7 +5830,7 @@ yydefault: } case 418: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3069 + //line php5/php5.y:3073 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5834,19 +5838,19 @@ yydefault: } case 419: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:3078 + //line php5/php5.y:3082 { yyVAL.list = nil } case 420: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3080 + //line php5/php5.y:3084 { yyVAL.list = yyDollar[1].list } case 423: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:3090 + //line php5/php5.y:3094 { arrayItem := expr.NewArrayItem(yyDollar[3].node, yyDollar[5].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodesPosition(yyDollar[3].node, yyDollar[5].node)) @@ -5856,7 +5860,7 @@ yydefault: } case 424: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3098 + //line php5/php5.y:3102 { arrayItem := expr.NewArrayItem(nil, yyDollar[3].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -5866,7 +5870,7 @@ yydefault: } case 425: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3106 + //line php5/php5.y:3110 { arrayItem := expr.NewArrayItem(yyDollar[1].node, yyDollar[3].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5876,7 +5880,7 @@ yydefault: } case 426: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3114 + //line php5/php5.y:3118 { arrayItem := expr.NewArrayItem(nil, yyDollar[1].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -5886,49 +5890,49 @@ yydefault: } case 427: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3125 + //line php5/php5.y:3129 { yyVAL.node = yyDollar[1].node } case 428: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3127 + //line php5/php5.y:3131 { yyVAL.node = yyDollar[1].node } case 429: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3132 + //line php5/php5.y:3136 { yyVAL.node = yyDollar[2].node } case 430: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3134 + //line php5/php5.y:3138 { yyVAL.node = yyDollar[2].node } case 431: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3140 + //line php5/php5.y:3144 { yyVAL.node = yyDollar[1].node } case 432: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3146 + //line php5/php5.y:3150 { yyVAL.node = yyDollar[1].node } case 433: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3151 + //line php5/php5.y:3155 { yyVAL.node = yyDollar[1].node } case 434: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:3156 + //line php5/php5.y:3160 { yyVAL.node = yyDollar[1].node @@ -5983,25 +5987,25 @@ yydefault: } case 435: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3209 + //line php5/php5.y:3213 { yyVAL.node = yyDollar[1].node } case 436: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3214 + //line php5/php5.y:3218 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].list...) } case 437: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:3216 + //line php5/php5.y:3220 { yyVAL.list = []node.Node{} } case 438: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3222 + //line php5/php5.y:3226 { if yyDollar[3].list != nil { yyDollar[3].list[0].(*expr.MethodCall).Method = yyDollar[2].list[len(yyDollar[2].list)-1].(*expr.PropertyFetch).Property @@ -6012,7 +6016,7 @@ yydefault: } case 439: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3234 + //line php5/php5.y:3238 { fetch := expr.NewArrayDimFetch(nil, yyDollar[3].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -6021,7 +6025,7 @@ yydefault: } case 440: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3241 + //line php5/php5.y:3245 { fetch := expr.NewArrayDimFetch(nil, yyDollar[3].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -6030,38 +6034,38 @@ yydefault: } case 441: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3251 + //line php5/php5.y:3255 { yyVAL.node = expr.NewMethodCall(nil, nil, yyDollar[1].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListTokenPosition(yyDollar[1].nodesWithEndToken.nodes, yyDollar[1].nodesWithEndToken.endToken)) } case 442: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3259 + //line php5/php5.y:3263 { yyVAL.list = []node.Node{yyDollar[1].node} } case 443: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3261 + //line php5/php5.y:3265 { yyVAL.list = yyDollar[1].list } case 444: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:3263 + //line php5/php5.y:3267 { yyVAL.list = nil } case 445: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3268 + //line php5/php5.y:3272 { yyVAL.node = yyDollar[1].node } case 446: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3270 + //line php5/php5.y:3274 { yyDollar[1].simpleIndirectReference.last.SetVarName(yyDollar[2].node) @@ -6073,7 +6077,7 @@ yydefault: } case 447: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3283 + //line php5/php5.y:3287 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -6081,7 +6085,7 @@ yydefault: } case 448: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3289 + //line php5/php5.y:3293 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -6089,13 +6093,13 @@ yydefault: } case 449: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3299 + //line php5/php5.y:3303 { yyVAL.node = yyDollar[1].node } case 450: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3304 + //line php5/php5.y:3308 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -6103,7 +6107,7 @@ yydefault: } case 451: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3310 + //line php5/php5.y:3314 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -6111,31 +6115,31 @@ yydefault: } case 452: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3318 + //line php5/php5.y:3322 { yyVAL.node = yyDollar[1].node } case 453: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3319 + //line php5/php5.y:3323 { yyVAL.node = yyDollar[1].node } case 454: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3320 + //line php5/php5.y:3324 { yyVAL.node = yyDollar[1].node } case 455: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3326 + //line php5/php5.y:3330 { yyVAL.node = yyDollar[1].node } case 456: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3328 + //line php5/php5.y:3332 { yyDollar[1].simpleIndirectReference.last.SetVarName(yyDollar[2].node) @@ -6147,13 +6151,13 @@ yydefault: } case 457: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3338 + //line php5/php5.y:3342 { yyVAL.node = yyDollar[1].node } case 458: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3343 + //line php5/php5.y:3347 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -6161,7 +6165,7 @@ yydefault: } case 459: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3349 + //line php5/php5.y:3353 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -6169,13 +6173,13 @@ yydefault: } case 460: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3355 + //line php5/php5.y:3359 { yyVAL.node = yyDollar[1].node } case 461: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3361 + //line php5/php5.y:3365 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6187,7 +6191,7 @@ yydefault: } case 462: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3371 + //line php5/php5.y:3375 { yyVAL.node = expr.NewVariable(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -6195,25 +6199,25 @@ yydefault: } case 463: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:3380 + //line php5/php5.y:3384 { yyVAL.node = nil } case 464: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3382 + //line php5/php5.y:3386 { yyVAL.node = yyDollar[1].node } case 465: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3388 + //line php5/php5.y:3392 { yyVAL.list = yyDollar[1].list } case 466: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3390 + //line php5/php5.y:3394 { fetch := expr.NewPropertyFetch(nil, yyDollar[1].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -6222,7 +6226,7 @@ yydefault: } case 467: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3400 + //line php5/php5.y:3404 { fetch := expr.NewArrayDimFetch(nil, yyDollar[3].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -6231,7 +6235,7 @@ yydefault: } case 468: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3407 + //line php5/php5.y:3411 { fetch := expr.NewArrayDimFetch(nil, yyDollar[3].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -6240,7 +6244,7 @@ yydefault: } case 469: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3414 + //line php5/php5.y:3418 { fetch := expr.NewPropertyFetch(nil, yyDollar[1].node) positions.AddPosition(fetch, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -6249,7 +6253,7 @@ yydefault: } case 470: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3424 + //line php5/php5.y:3428 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6257,13 +6261,13 @@ yydefault: } case 471: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3430 + //line php5/php5.y:3434 { yyVAL.node = yyDollar[2].node } case 472: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3435 + //line php5/php5.y:3439 { n := expr.NewVariable(nil) positions.AddPosition(n, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6273,7 +6277,7 @@ yydefault: } case 473: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3443 + //line php5/php5.y:3447 { n := expr.NewVariable(nil) positions.AddPosition(n, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -6287,13 +6291,13 @@ yydefault: } case 474: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3458 + //line php5/php5.y:3462 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 475: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3460 + //line php5/php5.y:3464 { if yyDollar[1].node == nil { yyVAL.list = []node.Node{} @@ -6303,7 +6307,7 @@ yydefault: } case 476: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3472 + //line php5/php5.y:3476 { yyVAL.node = expr.NewArrayItem(nil, yyDollar[1].node, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -6311,7 +6315,7 @@ yydefault: } case 477: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3478 + //line php5/php5.y:3482 { item := expr.NewList(yyDollar[3].list) positions.AddPosition(item, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -6323,25 +6327,25 @@ yydefault: } case 478: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:3488 + //line php5/php5.y:3492 { yyVAL.node = nil } case 479: yyDollar = yyS[yypt-0 : yypt+1] - //line php5/php5.y:3494 + //line php5/php5.y:3498 { yyVAL.list = []node.Node{} } case 480: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3496 + //line php5/php5.y:3500 { yyVAL.list = yyDollar[1].list } case 481: yyDollar = yyS[yypt-5 : yypt+1] - //line php5/php5.y:3501 + //line php5/php5.y:3505 { arrayItem := expr.NewArrayItem(yyDollar[3].node, yyDollar[5].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodesPosition(yyDollar[3].node, yyDollar[5].node)) @@ -6351,7 +6355,7 @@ yydefault: } case 482: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3509 + //line php5/php5.y:3513 { arrayItem := expr.NewArrayItem(nil, yyDollar[3].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodePosition(yyDollar[3].node)) @@ -6361,7 +6365,7 @@ yydefault: } case 483: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3517 + //line php5/php5.y:3521 { arrayItem := expr.NewArrayItem(yyDollar[1].node, yyDollar[3].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -6371,7 +6375,7 @@ yydefault: } case 484: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3525 + //line php5/php5.y:3529 { arrayItem := expr.NewArrayItem(nil, yyDollar[1].node, false) positions.AddPosition(arrayItem, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -6381,7 +6385,7 @@ yydefault: } case 485: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:3533 + //line php5/php5.y:3537 { arrayItem := expr.NewArrayItem(yyDollar[3].node, yyDollar[6].node, true) positions.AddPosition(arrayItem, positionBuilder.NewNodesPosition(yyDollar[3].node, yyDollar[6].node)) @@ -6391,7 +6395,7 @@ yydefault: } case 486: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3541 + //line php5/php5.y:3545 { arrayItem := expr.NewArrayItem(nil, yyDollar[4].node, true) positions.AddPosition(arrayItem, positionBuilder.NewTokenNodePosition(yyDollar[3].token, yyDollar[4].node)) @@ -6401,7 +6405,7 @@ yydefault: } case 487: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3549 + //line php5/php5.y:3553 { arrayItem := expr.NewArrayItem(yyDollar[1].node, yyDollar[4].node, true) positions.AddPosition(arrayItem, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -6411,7 +6415,7 @@ yydefault: } case 488: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3557 + //line php5/php5.y:3561 { arrayItem := expr.NewArrayItem(nil, yyDollar[2].node, true) positions.AddPosition(arrayItem, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -6421,13 +6425,13 @@ yydefault: } case 489: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3568 + //line php5/php5.y:3572 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 490: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3570 + //line php5/php5.y:3574 { encapsed := scalar.NewEncapsedStringPart(yyDollar[2].token.Value) positions.AddPosition(encapsed, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -6436,13 +6440,13 @@ yydefault: } case 491: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3577 + //line php5/php5.y:3581 { yyVAL.list = []node.Node{yyDollar[1].node} } case 492: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3579 + //line php5/php5.y:3583 { encapsed := scalar.NewEncapsedStringPart(yyDollar[1].token.Value) positions.AddPosition(encapsed, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6451,7 +6455,7 @@ yydefault: } case 493: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3589 + //line php5/php5.y:3593 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6463,7 +6467,7 @@ yydefault: } case 494: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3599 + //line php5/php5.y:3603 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6478,7 +6482,7 @@ yydefault: } case 495: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3612 + //line php5/php5.y:3616 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6496,7 +6500,7 @@ yydefault: } case 496: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3628 + //line php5/php5.y:3632 { yyVAL.node = yyDollar[2].node positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -6504,7 +6508,7 @@ yydefault: } case 497: yyDollar = yyS[yypt-6 : yypt+1] - //line php5/php5.y:3634 + //line php5/php5.y:3638 { identifier := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -6519,13 +6523,13 @@ yydefault: } case 498: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3648 + //line php5/php5.y:3652 { yyVAL.node = yyDollar[2].node } case 499: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3653 + //line php5/php5.y:3657 { yyVAL.node = scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6533,7 +6537,7 @@ yydefault: } case 500: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3659 + //line php5/php5.y:3663 { // TODO: add option to handle 64 bit integer if _, err := strconv.Atoi(yyDollar[1].token.Value); err == nil { @@ -6547,7 +6551,7 @@ yydefault: } case 501: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3671 + //line php5/php5.y:3675 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -6559,7 +6563,7 @@ yydefault: } case 502: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3684 + //line php5/php5.y:3688 { yyVAL.node = expr.NewIsset(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -6567,7 +6571,7 @@ yydefault: } case 503: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3690 + //line php5/php5.y:3694 { yyVAL.node = expr.NewEmpty(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -6575,7 +6579,7 @@ yydefault: } case 504: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3696 + //line php5/php5.y:3700 { yyVAL.node = expr.NewEmpty(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -6583,7 +6587,7 @@ yydefault: } case 505: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3702 + //line php5/php5.y:3706 { yyVAL.node = expr.NewInclude(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -6591,7 +6595,7 @@ yydefault: } case 506: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3708 + //line php5/php5.y:3712 { yyVAL.node = expr.NewIncludeOnce(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -6599,7 +6603,7 @@ yydefault: } case 507: yyDollar = yyS[yypt-4 : yypt+1] - //line php5/php5.y:3714 + //line php5/php5.y:3718 { yyVAL.node = expr.NewEval(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -6607,7 +6611,7 @@ yydefault: } case 508: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3720 + //line php5/php5.y:3724 { yyVAL.node = expr.NewRequire(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -6615,7 +6619,7 @@ yydefault: } case 509: yyDollar = yyS[yypt-2 : yypt+1] - //line php5/php5.y:3726 + //line php5/php5.y:3730 { yyVAL.node = expr.NewRequireOnce(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -6623,31 +6627,31 @@ yydefault: } case 510: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3735 + //line php5/php5.y:3739 { yyVAL.list = []node.Node{yyDollar[1].node} } case 511: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3737 + //line php5/php5.y:3741 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 512: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3742 + //line php5/php5.y:3746 { yyVAL.node = yyDollar[1].node } case 513: yyDollar = yyS[yypt-1 : yypt+1] - //line php5/php5.y:3744 + //line php5/php5.y:3748 { yyVAL.node = yyDollar[1].node } case 514: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3749 + //line php5/php5.y:3753 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -6659,7 +6663,7 @@ yydefault: } case 515: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3759 + //line php5/php5.y:3763 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -6671,7 +6675,7 @@ yydefault: } case 516: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3772 + //line php5/php5.y:3776 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -6683,7 +6687,7 @@ yydefault: } case 517: yyDollar = yyS[yypt-3 : yypt+1] - //line php5/php5.y:3785 + //line php5/php5.y:3789 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) diff --git a/php5/php5.y b/php5/php5.y index 7c51e9a..d35025c 100644 --- a/php5/php5.y +++ b/php5/php5.y @@ -629,7 +629,11 @@ unticked_statement: } | T_SWITCH parenthesis_expr switch_case_list { - $$ = stmt.NewSwitch($2, $3.nodes) + if ($3.endToken.Value == ";") { + $$ = stmt.NewAltSwitch($2, $3.nodes) + } else { + $$ = stmt.NewSwitch($2, $3.nodes) + } positions.AddPosition($$, positionBuilder.NewTokensPosition($1, $3.endToken)) comments.AddComments($$, $1.Comments()) } diff --git a/php5/php5_test.go b/php5/php5_test.go index 6030090..afddf8e 100644 --- a/php5/php5_test.go +++ b/php5/php5_test.go @@ -1400,7 +1400,7 @@ CAD; }, }, }, - &stmt.Switch{ + &stmt.AltSwitch{ Cond: &scalar.Lnumber{Value: "1"}, Cases: []node.Node{ &stmt.Case{ @@ -1416,7 +1416,7 @@ CAD; }, }, }, - &stmt.Switch{ + &stmt.AltSwitch{ Cond: &scalar.Lnumber{Value: "1"}, Cases: []node.Node{ &stmt.Case{ diff --git a/php7/php7.go b/php7/php7.go index 1f5070e..782fd78 100644 --- a/php7/php7.go +++ b/php7/php7.go @@ -344,7 +344,7 @@ const yyEofCode = 1 const yyErrCode = 2 const yyInitialStackSize = 16 -//line php7/php7.y:2606 +//line php7/php7.y:2610 //line yacctab:1 var yyExca = [...]int{ @@ -2913,13 +2913,17 @@ yydefault: yyDollar = yyS[yypt-5 : yypt+1] //line php7/php7.y:554 { - yyVAL.node = stmt.NewSwitch(yyDollar[3].node, yyDollar[5].nodesWithEndToken.nodes) + if yyDollar[5].nodesWithEndToken.endToken.Value == ";" { + yyVAL.node = stmt.NewAltSwitch(yyDollar[3].node, yyDollar[5].nodesWithEndToken.nodes) + } else { + yyVAL.node = stmt.NewSwitch(yyDollar[3].node, yyDollar[5].nodesWithEndToken.nodes) + } positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[5].nodesWithEndToken.endToken)) comments.AddComments(yyVAL.node, yyDollar[1].token.Comments()) } case 136: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:560 + //line php7/php7.y:564 { yyVAL.node = stmt.NewBreak(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2927,7 +2931,7 @@ yydefault: } case 137: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:566 + //line php7/php7.y:570 { yyVAL.node = stmt.NewContinue(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2935,7 +2939,7 @@ yydefault: } case 138: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:572 + //line php7/php7.y:576 { yyVAL.node = stmt.NewReturn(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2943,7 +2947,7 @@ yydefault: } case 139: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:578 + //line php7/php7.y:582 { yyVAL.node = stmt.NewGlobal(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2951,7 +2955,7 @@ yydefault: } case 140: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:584 + //line php7/php7.y:588 { yyVAL.node = stmt.NewStatic(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2959,7 +2963,7 @@ yydefault: } case 141: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:590 + //line php7/php7.y:594 { yyVAL.node = stmt.NewEcho(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2967,7 +2971,7 @@ yydefault: } case 142: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:596 + //line php7/php7.y:600 { yyVAL.node = stmt.NewInlineHtml(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -2975,7 +2979,7 @@ yydefault: } case 143: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:602 + //line php7/php7.y:606 { yyVAL.node = stmt.NewExpression(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -2983,7 +2987,7 @@ yydefault: } case 144: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:608 + //line php7/php7.y:612 { yyVAL.node = stmt.NewUnset(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[6].token)) @@ -2991,7 +2995,7 @@ yydefault: } case 145: yyDollar = yyS[yypt-7 : yypt+1] - //line php7/php7.y:614 + //line php7/php7.y:618 { if yyDollar[7].altSyntaxNode.isAlt { yyVAL.node = stmt.NewAltForeach(yyDollar[3].node, nil, yyDollar[5].foreachVariable.node, yyDollar[7].altSyntaxNode.node, yyDollar[5].foreachVariable.byRef) @@ -3003,7 +3007,7 @@ yydefault: } case 146: yyDollar = yyS[yypt-9 : yypt+1] - //line php7/php7.y:624 + //line php7/php7.y:628 { if yyDollar[9].altSyntaxNode.isAlt { yyVAL.node = stmt.NewAltForeach(yyDollar[3].node, yyDollar[5].node, yyDollar[7].foreachVariable.node, yyDollar[9].altSyntaxNode.node, yyDollar[7].foreachVariable.byRef) @@ -3015,7 +3019,7 @@ yydefault: } case 147: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:634 + //line php7/php7.y:638 { yyVAL.node = stmt.NewDeclare(yyDollar[3].list, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[5].node)) @@ -3023,7 +3027,7 @@ yydefault: } case 148: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:640 + //line php7/php7.y:644 { yyVAL.node = stmt.NewNop() positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3031,7 +3035,7 @@ yydefault: } case 149: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:646 + //line php7/php7.y:650 { if yyDollar[6].node == nil { yyVAL.node = stmt.NewTry(yyDollar[3].list, yyDollar[5].list, yyDollar[6].node) @@ -3045,7 +3049,7 @@ yydefault: } case 150: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:658 + //line php7/php7.y:662 { yyVAL.node = stmt.NewThrow(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3053,7 +3057,7 @@ yydefault: } case 151: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:664 + //line php7/php7.y:668 { label := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(label, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3065,7 +3069,7 @@ yydefault: } case 152: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:674 + //line php7/php7.y:678 { label := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(label, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3077,13 +3081,13 @@ yydefault: } case 153: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:685 + //line php7/php7.y:689 { yyVAL.list = []node.Node{} } case 154: yyDollar = yyS[yypt-9 : yypt+1] - //line php7/php7.y:687 + //line php7/php7.y:691 { identifier := node.NewIdentifier(yyDollar[5].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[5].token)) @@ -3099,25 +3103,25 @@ yydefault: } case 155: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:702 + //line php7/php7.y:706 { yyVAL.list = []node.Node{yyDollar[1].node} } case 156: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:703 + //line php7/php7.y:707 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 157: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:707 + //line php7/php7.y:711 { yyVAL.node = nil } case 158: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:709 + //line php7/php7.y:713 { yyVAL.node = stmt.NewFinally(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3125,25 +3129,25 @@ yydefault: } case 159: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:717 + //line php7/php7.y:721 { yyVAL.list = []node.Node{yyDollar[1].node} } case 160: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:718 + //line php7/php7.y:722 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 161: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:722 + //line php7/php7.y:726 { yyVAL.node = yyDollar[1].node } case 162: yyDollar = yyS[yypt-11 : yypt+1] - //line php7/php7.y:727 + //line php7/php7.y:731 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3155,31 +3159,31 @@ yydefault: } case 163: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:739 + //line php7/php7.y:743 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 164: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:740 + //line php7/php7.y:744 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 165: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:744 + //line php7/php7.y:748 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 166: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:745 + //line php7/php7.y:749 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 167: yyDollar = yyS[yypt-9 : yypt+1] - //line php7/php7.y:750 + //line php7/php7.y:754 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3191,7 +3195,7 @@ yydefault: } case 168: yyDollar = yyS[yypt-8 : yypt+1] - //line php7/php7.y:760 + //line php7/php7.y:764 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3203,19 +3207,19 @@ yydefault: } case 169: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:772 + //line php7/php7.y:776 { yyVAL.list = []node.Node{yyDollar[1].node} } case 170: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:773 + //line php7/php7.y:777 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 171: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:778 + //line php7/php7.y:782 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3223,7 +3227,7 @@ yydefault: } case 172: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:784 + //line php7/php7.y:788 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3231,7 +3235,7 @@ yydefault: } case 173: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:793 + //line php7/php7.y:797 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3243,7 +3247,7 @@ yydefault: } case 174: yyDollar = yyS[yypt-7 : yypt+1] - //line php7/php7.y:806 + //line php7/php7.y:810 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3255,55 +3259,55 @@ yydefault: } case 175: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:818 + //line php7/php7.y:822 { yyVAL.node = nil } case 176: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:819 + //line php7/php7.y:823 { yyVAL.node = yyDollar[2].node } case 177: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:823 + //line php7/php7.y:827 { yyVAL.list = nil } case 178: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:824 + //line php7/php7.y:828 { yyVAL.list = yyDollar[2].list } case 179: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:828 + //line php7/php7.y:832 { yyVAL.list = nil } case 180: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:829 + //line php7/php7.y:833 { yyVAL.list = yyDollar[2].list } case 181: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:833 + //line php7/php7.y:837 { yyVAL.foreachVariable = foreachVariable{yyDollar[1].node, false} } case 182: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:834 + //line php7/php7.y:838 { yyVAL.foreachVariable = foreachVariable{yyDollar[2].node, true} } case 183: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:836 + //line php7/php7.y:840 { list := expr.NewList(yyDollar[3].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3312,7 +3316,7 @@ yydefault: } case 184: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:843 + //line php7/php7.y:847 { list := expr.NewShortList(yyDollar[2].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3321,39 +3325,39 @@ yydefault: } case 185: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:853 + //line php7/php7.y:857 { yyVAL.altSyntaxNode = altSyntaxNode{yyDollar[1].node, false} } case 186: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:855 + //line php7/php7.y:859 { yyVAL.altSyntaxNode = altSyntaxNode{stmt.NewStmtList(yyDollar[2].list), true} positions.AddPosition(yyVAL.altSyntaxNode.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) } case 187: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:863 + //line php7/php7.y:867 { yyVAL.altSyntaxNode = altSyntaxNode{yyDollar[1].node, false} } case 188: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:865 + //line php7/php7.y:869 { yyVAL.altSyntaxNode = altSyntaxNode{stmt.NewStmtList(yyDollar[2].list), true} positions.AddPosition(yyVAL.altSyntaxNode.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) } case 189: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:872 + //line php7/php7.y:876 { yyVAL.node = yyDollar[1].node } case 190: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:874 + //line php7/php7.y:878 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3361,37 +3365,37 @@ yydefault: } case 191: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:882 + //line php7/php7.y:886 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 192: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:883 + //line php7/php7.y:887 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[3].list, yyDollar[4].token} } case 193: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:884 + //line php7/php7.y:888 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[4].token} } case 194: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:885 + //line php7/php7.y:889 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[3].list, yyDollar[5].token} } case 195: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:889 + //line php7/php7.y:893 { yyVAL.list = []node.Node{} } case 196: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:891 + //line php7/php7.y:895 { _case := stmt.NewCase(yyDollar[3].node, yyDollar[5].list) positions.AddPosition(_case, positionBuilder.NewTokenNodeListPosition(yyDollar[2].token, yyDollar[5].list)) @@ -3400,7 +3404,7 @@ yydefault: } case 197: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:898 + //line php7/php7.y:902 { _default := stmt.NewDefault(yyDollar[4].list) positions.AddPosition(_default, positionBuilder.NewTokenNodeListPosition(yyDollar[2].token, yyDollar[4].list)) @@ -3409,20 +3413,20 @@ yydefault: } case 200: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:913 + //line php7/php7.y:917 { yyVAL.altSyntaxNode = altSyntaxNode{yyDollar[1].node, false} } case 201: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:915 + //line php7/php7.y:919 { yyVAL.altSyntaxNode = altSyntaxNode{stmt.NewStmtList(yyDollar[2].list), true} positions.AddPosition(yyVAL.altSyntaxNode.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) } case 202: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:923 + //line php7/php7.y:927 { yyVAL.node = stmt.NewIf(yyDollar[3].node, yyDollar[5].node, nil, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[5].node)) @@ -3430,7 +3434,7 @@ yydefault: } case 203: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:929 + //line php7/php7.y:933 { _elseIf := stmt.NewElseIf(yyDollar[4].node, yyDollar[6].node) positions.AddPosition(_elseIf, positionBuilder.NewTokenNodePosition(yyDollar[2].token, yyDollar[6].node)) @@ -3441,13 +3445,13 @@ yydefault: } case 204: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:940 + //line php7/php7.y:944 { yyVAL.node = yyDollar[1].node } case 205: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:942 + //line php7/php7.y:946 { _else := stmt.NewElse(yyDollar[3].node) positions.AddPosition(_else, positionBuilder.NewTokenNodePosition(yyDollar[2].token, yyDollar[3].node)) @@ -3458,7 +3462,7 @@ yydefault: } case 206: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:954 + //line php7/php7.y:958 { stmts := stmt.NewStmtList(yyDollar[6].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[6].list)) @@ -3470,7 +3474,7 @@ yydefault: } case 207: yyDollar = yyS[yypt-7 : yypt+1] - //line php7/php7.y:964 + //line php7/php7.y:968 { stmts := stmt.NewStmtList(yyDollar[7].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[7].list)) @@ -3483,14 +3487,14 @@ yydefault: } case 208: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:978 + //line php7/php7.y:982 { yyVAL.node = yyDollar[1].node positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token)) } case 209: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:983 + //line php7/php7.y:987 { stmts := stmt.NewStmtList(yyDollar[4].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[4].list)) @@ -3504,31 +3508,31 @@ yydefault: } case 210: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:997 + //line php7/php7.y:1001 { yyVAL.list = yyDollar[1].list } case 211: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:998 + //line php7/php7.y:1002 { yyVAL.list = nil } case 212: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1002 + //line php7/php7.y:1006 { yyVAL.list = []node.Node{yyDollar[1].node} } case 213: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1003 + //line php7/php7.y:1007 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 214: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1008 + //line php7/php7.y:1012 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3558,7 +3562,7 @@ yydefault: } case 215: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:1036 + //line php7/php7.y:1040 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3588,25 +3592,25 @@ yydefault: } case 216: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1066 + //line php7/php7.y:1070 { yyVAL.node = nil } case 217: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1067 + //line php7/php7.y:1071 { yyVAL.node = yyDollar[1].node } case 218: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1071 + //line php7/php7.y:1075 { yyVAL.node = yyDollar[1].node } case 219: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1073 + //line php7/php7.y:1077 { yyVAL.node = node.NewNullable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3614,7 +3618,7 @@ yydefault: } case 220: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1082 + //line php7/php7.y:1086 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3622,7 +3626,7 @@ yydefault: } case 221: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1088 + //line php7/php7.y:1092 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3630,49 +3634,49 @@ yydefault: } case 222: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1093 + //line php7/php7.y:1097 { yyVAL.node = yyDollar[1].node } case 223: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1097 + //line php7/php7.y:1101 { yyVAL.node = nil } case 224: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1098 + //line php7/php7.y:1102 { yyVAL.node = yyDollar[2].node } case 225: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1102 + //line php7/php7.y:1106 { yyVAL.nodesWithEndToken = &nodesWithEndToken{[]node.Node{}, yyDollar[2].token} } case 226: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1103 + //line php7/php7.y:1107 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[4].token} } case 227: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1107 + //line php7/php7.y:1111 { yyVAL.list = []node.Node{yyDollar[1].node} } case 228: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1108 + //line php7/php7.y:1112 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 229: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1113 + //line php7/php7.y:1117 { yyVAL.node = node.NewArgument(yyDollar[1].node, false, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -3680,7 +3684,7 @@ yydefault: } case 230: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1119 + //line php7/php7.y:1123 { yyVAL.node = node.NewArgument(yyDollar[2].node, true, false) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3688,37 +3692,37 @@ yydefault: } case 231: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1127 + //line php7/php7.y:1131 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 232: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1128 + //line php7/php7.y:1132 { yyVAL.list = []node.Node{yyDollar[1].node} } case 233: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1132 + //line php7/php7.y:1136 { yyVAL.node = yyDollar[1].node } case 234: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1136 + //line php7/php7.y:1140 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 235: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1137 + //line php7/php7.y:1141 { yyVAL.list = []node.Node{yyDollar[1].node} } case 236: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1142 + //line php7/php7.y:1146 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3733,7 +3737,7 @@ yydefault: } case 237: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1155 + //line php7/php7.y:1159 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3748,19 +3752,19 @@ yydefault: } case 238: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1170 + //line php7/php7.y:1174 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 239: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1171 + //line php7/php7.y:1175 { yyVAL.list = []node.Node{} } case 240: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1176 + //line php7/php7.y:1180 { yyVAL.node = stmt.NewPropertyList(yyDollar[1].list, yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListTokenPosition(yyDollar[1].list, yyDollar[3].token)) @@ -3768,7 +3772,7 @@ yydefault: } case 241: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1182 + //line php7/php7.y:1186 { yyVAL.node = stmt.NewClassConstList(yyDollar[1].list, yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewOptionalListTokensPosition(yyDollar[1].list, yyDollar[2].token, yyDollar[4].token)) @@ -3776,7 +3780,7 @@ yydefault: } case 242: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1188 + //line php7/php7.y:1192 { yyVAL.node = stmt.NewTraitUse(yyDollar[2].list, yyDollar[3].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].nodesWithEndToken.endToken)) @@ -3784,7 +3788,7 @@ yydefault: } case 243: yyDollar = yyS[yypt-10 : yypt+1] - //line php7/php7.y:1194 + //line php7/php7.y:1198 { name := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3796,61 +3800,61 @@ yydefault: } case 244: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1206 + //line php7/php7.y:1210 { yyVAL.list = []node.Node{yyDollar[1].node} } case 245: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1207 + //line php7/php7.y:1211 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 246: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1211 + //line php7/php7.y:1215 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[1].token} } case 247: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1212 + //line php7/php7.y:1216 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[2].token} } case 248: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1213 + //line php7/php7.y:1217 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 249: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1217 + //line php7/php7.y:1221 { yyVAL.list = []node.Node{yyDollar[1].node} } case 250: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1218 + //line php7/php7.y:1222 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 251: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1222 + //line php7/php7.y:1226 { yyVAL.node = yyDollar[1].node } case 252: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1223 + //line php7/php7.y:1227 { yyVAL.node = yyDollar[1].node } case 253: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1228 + //line php7/php7.y:1232 { yyVAL.node = stmt.NewTraitUsePrecedence(yyDollar[1].node, yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeNodeListPosition(yyDollar[1].node, yyDollar[3].list)) @@ -3858,7 +3862,7 @@ yydefault: } case 254: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1237 + //line php7/php7.y:1241 { alias := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3870,7 +3874,7 @@ yydefault: } case 255: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1247 + //line php7/php7.y:1251 { alias := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3882,7 +3886,7 @@ yydefault: } case 256: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1257 + //line php7/php7.y:1261 { alias := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3894,7 +3898,7 @@ yydefault: } case 257: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1267 + //line php7/php7.y:1271 { yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, yyDollar[3].node, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -3902,7 +3906,7 @@ yydefault: } case 258: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1276 + //line php7/php7.y:1280 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3914,13 +3918,13 @@ yydefault: } case 259: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1285 + //line php7/php7.y:1289 { yyVAL.node = yyDollar[1].node } case 260: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1290 + //line php7/php7.y:1294 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3932,25 +3936,25 @@ yydefault: } case 261: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1302 + //line php7/php7.y:1306 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[1].token} } case 262: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1303 + //line php7/php7.y:1307 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 263: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1307 + //line php7/php7.y:1311 { yyVAL.list = yyDollar[1].list } case 264: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1309 + //line php7/php7.y:1313 { modifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(modifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3959,31 +3963,31 @@ yydefault: } case 265: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1318 + //line php7/php7.y:1322 { yyVAL.list = nil } case 266: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1319 + //line php7/php7.y:1323 { yyVAL.list = yyDollar[1].list } case 267: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1323 + //line php7/php7.y:1327 { yyVAL.list = []node.Node{yyDollar[1].node} } case 268: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1324 + //line php7/php7.y:1328 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 269: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1329 + //line php7/php7.y:1333 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3991,7 +3995,7 @@ yydefault: } case 270: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1335 + //line php7/php7.y:1339 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3999,7 +4003,7 @@ yydefault: } case 271: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1341 + //line php7/php7.y:1345 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4007,7 +4011,7 @@ yydefault: } case 272: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1347 + //line php7/php7.y:1351 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4015,7 +4019,7 @@ yydefault: } case 273: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1353 + //line php7/php7.y:1357 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4023,7 +4027,7 @@ yydefault: } case 274: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1359 + //line php7/php7.y:1363 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4031,19 +4035,19 @@ yydefault: } case 275: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1367 + //line php7/php7.y:1371 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 276: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1368 + //line php7/php7.y:1372 { yyVAL.list = []node.Node{yyDollar[1].node} } case 277: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1373 + //line php7/php7.y:1377 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4058,7 +4062,7 @@ yydefault: } case 278: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1386 + //line php7/php7.y:1390 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4073,19 +4077,19 @@ yydefault: } case 279: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1401 + //line php7/php7.y:1405 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 280: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1402 + //line php7/php7.y:1406 { yyVAL.list = []node.Node{yyDollar[1].node} } case 281: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1407 + //line php7/php7.y:1411 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4097,7 +4101,7 @@ yydefault: } case 282: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1420 + //line php7/php7.y:1424 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4109,49 +4113,49 @@ yydefault: } case 283: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1432 + //line php7/php7.y:1436 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 284: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1433 + //line php7/php7.y:1437 { yyVAL.list = []node.Node{yyDollar[1].node} } case 285: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1437 + //line php7/php7.y:1441 { yyVAL.node = yyDollar[1].node } case 286: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1441 + //line php7/php7.y:1445 { yyVAL.list = nil } case 287: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1442 + //line php7/php7.y:1446 { yyVAL.list = yyDollar[1].list } case 288: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1445 + //line php7/php7.y:1449 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 289: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1446 + //line php7/php7.y:1450 { yyVAL.list = []node.Node{yyDollar[1].node} } case 290: yyDollar = yyS[yypt-8 : yypt+1] - //line php7/php7.y:1451 + //line php7/php7.y:1455 { if yyDollar[2].nodesWithEndToken != nil { yyVAL.node = stmt.NewClass(nil, nil, yyDollar[2].nodesWithEndToken.nodes, yyDollar[3].node, yyDollar[4].list, yyDollar[7].list, yyDollar[5].str) @@ -4165,7 +4169,7 @@ yydefault: } case 291: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1466 + //line php7/php7.y:1470 { if yyDollar[3].nodesWithEndToken != nil { yyVAL.node = expr.NewNew(yyDollar[2].node, yyDollar[3].nodesWithEndToken.nodes) @@ -4179,13 +4183,13 @@ yydefault: } case 292: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1477 + //line php7/php7.y:1481 { yyVAL.node = expr.NewNew(yyDollar[2].node, nil) } case 293: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:1482 + //line php7/php7.y:1486 { list := expr.NewList(yyDollar[3].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -4197,7 +4201,7 @@ yydefault: } case 294: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:1492 + //line php7/php7.y:1496 { shortList := expr.NewShortList(yyDollar[2].list) positions.AddPosition(shortList, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4209,7 +4213,7 @@ yydefault: } case 295: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1502 + //line php7/php7.y:1506 { yyVAL.node = assign_op.NewAssign(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4217,7 +4221,7 @@ yydefault: } case 296: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1508 + //line php7/php7.y:1512 { yyVAL.node = assign_op.NewAssignRef(yyDollar[1].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -4225,7 +4229,7 @@ yydefault: } case 297: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1514 + //line php7/php7.y:1518 { yyVAL.node = expr.NewClone(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4233,7 +4237,7 @@ yydefault: } case 298: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1520 + //line php7/php7.y:1524 { yyVAL.node = assign_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4241,7 +4245,7 @@ yydefault: } case 299: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1526 + //line php7/php7.y:1530 { yyVAL.node = assign_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4249,7 +4253,7 @@ yydefault: } case 300: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1532 + //line php7/php7.y:1536 { yyVAL.node = assign_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4257,7 +4261,7 @@ yydefault: } case 301: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1538 + //line php7/php7.y:1542 { yyVAL.node = assign_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4265,7 +4269,7 @@ yydefault: } case 302: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1544 + //line php7/php7.y:1548 { yyVAL.node = assign_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4273,7 +4277,7 @@ yydefault: } case 303: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1550 + //line php7/php7.y:1554 { yyVAL.node = assign_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4281,7 +4285,7 @@ yydefault: } case 304: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1556 + //line php7/php7.y:1560 { yyVAL.node = assign_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4289,7 +4293,7 @@ yydefault: } case 305: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1562 + //line php7/php7.y:1566 { yyVAL.node = assign_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4297,7 +4301,7 @@ yydefault: } case 306: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1568 + //line php7/php7.y:1572 { yyVAL.node = assign_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4305,7 +4309,7 @@ yydefault: } case 307: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1574 + //line php7/php7.y:1578 { yyVAL.node = assign_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4313,7 +4317,7 @@ yydefault: } case 308: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1580 + //line php7/php7.y:1584 { yyVAL.node = assign_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4321,7 +4325,7 @@ yydefault: } case 309: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1586 + //line php7/php7.y:1590 { yyVAL.node = assign_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4329,7 +4333,7 @@ yydefault: } case 310: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1592 + //line php7/php7.y:1596 { yyVAL.node = expr.NewPostInc(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -4337,7 +4341,7 @@ yydefault: } case 311: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1598 + //line php7/php7.y:1602 { yyVAL.node = expr.NewPreInc(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4345,7 +4349,7 @@ yydefault: } case 312: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1604 + //line php7/php7.y:1608 { yyVAL.node = expr.NewPostDec(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -4353,7 +4357,7 @@ yydefault: } case 313: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1610 + //line php7/php7.y:1614 { yyVAL.node = expr.NewPreDec(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4361,7 +4365,7 @@ yydefault: } case 314: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1616 + //line php7/php7.y:1620 { yyVAL.node = binary_op.NewBooleanOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4369,7 +4373,7 @@ yydefault: } case 315: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1622 + //line php7/php7.y:1626 { yyVAL.node = binary_op.NewBooleanAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4377,7 +4381,7 @@ yydefault: } case 316: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1628 + //line php7/php7.y:1632 { yyVAL.node = binary_op.NewLogicalOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4385,7 +4389,7 @@ yydefault: } case 317: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1634 + //line php7/php7.y:1638 { yyVAL.node = binary_op.NewLogicalAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4393,7 +4397,7 @@ yydefault: } case 318: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1640 + //line php7/php7.y:1644 { yyVAL.node = binary_op.NewLogicalXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4401,7 +4405,7 @@ yydefault: } case 319: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1646 + //line php7/php7.y:1650 { yyVAL.node = binary_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4409,7 +4413,7 @@ yydefault: } case 320: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1652 + //line php7/php7.y:1656 { yyVAL.node = binary_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4417,7 +4421,7 @@ yydefault: } case 321: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1658 + //line php7/php7.y:1662 { yyVAL.node = binary_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4425,7 +4429,7 @@ yydefault: } case 322: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1664 + //line php7/php7.y:1668 { yyVAL.node = binary_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4433,7 +4437,7 @@ yydefault: } case 323: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1670 + //line php7/php7.y:1674 { yyVAL.node = binary_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4441,7 +4445,7 @@ yydefault: } case 324: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1676 + //line php7/php7.y:1680 { yyVAL.node = binary_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4449,7 +4453,7 @@ yydefault: } case 325: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1682 + //line php7/php7.y:1686 { yyVAL.node = binary_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4457,7 +4461,7 @@ yydefault: } case 326: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1688 + //line php7/php7.y:1692 { yyVAL.node = binary_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4465,7 +4469,7 @@ yydefault: } case 327: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1694 + //line php7/php7.y:1698 { yyVAL.node = binary_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4473,7 +4477,7 @@ yydefault: } case 328: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1700 + //line php7/php7.y:1704 { yyVAL.node = binary_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4481,7 +4485,7 @@ yydefault: } case 329: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1706 + //line php7/php7.y:1710 { yyVAL.node = binary_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4489,7 +4493,7 @@ yydefault: } case 330: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1712 + //line php7/php7.y:1716 { yyVAL.node = binary_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4497,7 +4501,7 @@ yydefault: } case 331: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1718 + //line php7/php7.y:1722 { yyVAL.node = expr.NewUnaryPlus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4505,7 +4509,7 @@ yydefault: } case 332: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1724 + //line php7/php7.y:1728 { yyVAL.node = expr.NewUnaryMinus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4513,7 +4517,7 @@ yydefault: } case 333: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1730 + //line php7/php7.y:1734 { yyVAL.node = expr.NewBooleanNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4521,7 +4525,7 @@ yydefault: } case 334: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1736 + //line php7/php7.y:1740 { yyVAL.node = expr.NewBitwiseNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4529,7 +4533,7 @@ yydefault: } case 335: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1742 + //line php7/php7.y:1746 { yyVAL.node = binary_op.NewIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4537,7 +4541,7 @@ yydefault: } case 336: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1748 + //line php7/php7.y:1752 { yyVAL.node = binary_op.NewNotIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4545,7 +4549,7 @@ yydefault: } case 337: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1754 + //line php7/php7.y:1758 { yyVAL.node = binary_op.NewEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4553,7 +4557,7 @@ yydefault: } case 338: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1760 + //line php7/php7.y:1764 { yyVAL.node = binary_op.NewNotEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4561,7 +4565,7 @@ yydefault: } case 339: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1766 + //line php7/php7.y:1770 { yyVAL.node = binary_op.NewSmaller(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4569,7 +4573,7 @@ yydefault: } case 340: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1772 + //line php7/php7.y:1776 { yyVAL.node = binary_op.NewSmallerOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4577,7 +4581,7 @@ yydefault: } case 341: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1778 + //line php7/php7.y:1782 { yyVAL.node = binary_op.NewGreater(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4585,7 +4589,7 @@ yydefault: } case 342: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1784 + //line php7/php7.y:1788 { yyVAL.node = binary_op.NewGreaterOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4593,7 +4597,7 @@ yydefault: } case 343: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1790 + //line php7/php7.y:1794 { yyVAL.node = binary_op.NewSpaceship(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4601,7 +4605,7 @@ yydefault: } case 344: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1796 + //line php7/php7.y:1800 { yyVAL.node = expr.NewInstanceOf(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4609,19 +4613,19 @@ yydefault: } case 345: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1801 + //line php7/php7.y:1805 { yyVAL.node = yyDollar[2].node } case 346: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1802 + //line php7/php7.y:1806 { yyVAL.node = yyDollar[1].node } case 347: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:1804 + //line php7/php7.y:1808 { yyVAL.node = expr.NewTernary(yyDollar[1].node, yyDollar[3].node, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[5].node)) @@ -4629,7 +4633,7 @@ yydefault: } case 348: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1810 + //line php7/php7.y:1814 { yyVAL.node = expr.NewTernary(yyDollar[1].node, nil, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -4637,7 +4641,7 @@ yydefault: } case 349: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1816 + //line php7/php7.y:1820 { yyVAL.node = binary_op.NewCoalesce(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4645,13 +4649,13 @@ yydefault: } case 350: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1821 + //line php7/php7.y:1825 { yyVAL.node = yyDollar[1].node } case 351: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1823 + //line php7/php7.y:1827 { yyVAL.node = cast.NewCastInt(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4659,7 +4663,7 @@ yydefault: } case 352: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1829 + //line php7/php7.y:1833 { yyVAL.node = cast.NewCastDouble(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4667,7 +4671,7 @@ yydefault: } case 353: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1835 + //line php7/php7.y:1839 { yyVAL.node = cast.NewCastString(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4675,7 +4679,7 @@ yydefault: } case 354: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1841 + //line php7/php7.y:1845 { yyVAL.node = cast.NewCastArray(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4683,7 +4687,7 @@ yydefault: } case 355: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1847 + //line php7/php7.y:1851 { yyVAL.node = cast.NewCastObject(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4691,7 +4695,7 @@ yydefault: } case 356: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1853 + //line php7/php7.y:1857 { yyVAL.node = cast.NewCastBool(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4699,7 +4703,7 @@ yydefault: } case 357: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1859 + //line php7/php7.y:1863 { yyVAL.node = cast.NewCastUnset(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4707,7 +4711,7 @@ yydefault: } case 358: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1865 + //line php7/php7.y:1869 { if strings.EqualFold(yyDollar[1].token.Value, "die") { yyVAL.node = expr.NewDie(yyDollar[2].node) @@ -4719,7 +4723,7 @@ yydefault: } case 359: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1875 + //line php7/php7.y:1879 { yyVAL.node = expr.NewErrorSuppress(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4727,13 +4731,13 @@ yydefault: } case 360: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1880 + //line php7/php7.y:1884 { yyVAL.node = yyDollar[1].node } case 361: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1882 + //line php7/php7.y:1886 { yyVAL.node = expr.NewShellExec(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4741,7 +4745,7 @@ yydefault: } case 362: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1888 + //line php7/php7.y:1892 { yyVAL.node = expr.NewPrint(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4749,7 +4753,7 @@ yydefault: } case 363: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1894 + //line php7/php7.y:1898 { yyVAL.node = expr.NewYield(nil, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4757,7 +4761,7 @@ yydefault: } case 364: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1900 + //line php7/php7.y:1904 { yyVAL.node = expr.NewYield(nil, yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4765,7 +4769,7 @@ yydefault: } case 365: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1906 + //line php7/php7.y:1910 { yyVAL.node = expr.NewYield(yyDollar[2].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[4].node)) @@ -4773,7 +4777,7 @@ yydefault: } case 366: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1912 + //line php7/php7.y:1916 { yyVAL.node = expr.NewYieldFrom(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4781,7 +4785,7 @@ yydefault: } case 367: yyDollar = yyS[yypt-11 : yypt+1] - //line php7/php7.y:1918 + //line php7/php7.y:1922 { yyVAL.node = expr.NewClosure(yyDollar[5].list, yyDollar[7].list, yyDollar[8].node, yyDollar[10].list, false, yyDollar[2].boolWithToken.value, yyDollar[3].str) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[11].token)) @@ -4790,7 +4794,7 @@ yydefault: } case 368: yyDollar = yyS[yypt-12 : yypt+1] - //line php7/php7.y:1925 + //line php7/php7.y:1929 { yyVAL.node = expr.NewClosure(yyDollar[6].list, yyDollar[8].list, yyDollar[9].node, yyDollar[11].list, true, yyDollar[3].boolWithToken.value, yyDollar[4].str) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[12].token)) @@ -4799,50 +4803,50 @@ yydefault: } case 369: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1934 + //line php7/php7.y:1938 { yyVAL.str = yylex.(*lexer).PhpDocComment yylex.(*lexer).PhpDocComment = "" } case 370: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1938 + //line php7/php7.y:1942 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 371: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1939 + //line php7/php7.y:1943 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 372: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:1943 + //line php7/php7.y:1947 { yyVAL.list = []node.Node{} } case 373: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1944 + //line php7/php7.y:1948 { yyVAL.list = yyDollar[3].list } case 374: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:1948 + //line php7/php7.y:1952 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 375: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1949 + //line php7/php7.y:1953 { yyVAL.list = []node.Node{yyDollar[1].node} } case 376: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:1954 + //line php7/php7.y:1958 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4857,7 +4861,7 @@ yydefault: } case 377: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1967 + //line php7/php7.y:1971 { identifier := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -4872,7 +4876,7 @@ yydefault: } case 378: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:1983 + //line php7/php7.y:1987 { yyVAL.node = expr.NewFunctionCall(yyDollar[1].node, yyDollar[2].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].nodesWithEndToken.endToken)) @@ -4880,7 +4884,7 @@ yydefault: } case 379: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1989 + //line php7/php7.y:1993 { yyVAL.node = expr.NewStaticCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -4888,7 +4892,7 @@ yydefault: } case 380: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:1995 + //line php7/php7.y:1999 { yyVAL.node = expr.NewStaticCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -4896,7 +4900,7 @@ yydefault: } case 381: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2001 + //line php7/php7.y:2005 { yyVAL.node = expr.NewFunctionCall(yyDollar[1].node, yyDollar[2].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].nodesWithEndToken.endToken)) @@ -4904,7 +4908,7 @@ yydefault: } case 382: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2010 + //line php7/php7.y:2014 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4912,67 +4916,67 @@ yydefault: } case 383: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2015 + //line php7/php7.y:2019 { yyVAL.node = yyDollar[1].node } case 384: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2019 + //line php7/php7.y:2023 { yyVAL.node = yyDollar[1].node } case 385: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2020 + //line php7/php7.y:2024 { yyVAL.node = yyDollar[1].node } case 386: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:2024 + //line php7/php7.y:2028 { yyVAL.node = nil } case 387: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2025 + //line php7/php7.y:2029 { yyVAL.node = yyDollar[2].node } case 388: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:2029 + //line php7/php7.y:2033 { yyVAL.list = []node.Node{} } case 389: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2030 + //line php7/php7.y:2034 { yyVAL.list = []node.Node{scalar.NewEncapsedStringPart(yyDollar[1].token.Value)} } case 390: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2031 + //line php7/php7.y:2035 { yyVAL.list = yyDollar[1].list } case 391: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:2035 + //line php7/php7.y:2039 { yyVAL.nodesWithEndToken = nil } case 392: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2036 + //line php7/php7.y:2040 { yyVAL.nodesWithEndToken = yyDollar[1].nodesWithEndToken } case 393: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2041 + //line php7/php7.y:2045 { yyVAL.node = expr.NewArray(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -4980,7 +4984,7 @@ yydefault: } case 394: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2047 + //line php7/php7.y:2051 { yyVAL.node = expr.NewShortArray(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4988,7 +4992,7 @@ yydefault: } case 395: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2053 + //line php7/php7.y:2057 { yyVAL.node = scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4996,7 +5000,7 @@ yydefault: } case 396: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2062 + //line php7/php7.y:2066 { yyVAL.node = scalar.NewLnumber(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5004,7 +5008,7 @@ yydefault: } case 397: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2068 + //line php7/php7.y:2072 { yyVAL.node = scalar.NewDnumber(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5012,7 +5016,7 @@ yydefault: } case 398: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2074 + //line php7/php7.y:2078 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5020,7 +5024,7 @@ yydefault: } case 399: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2080 + //line php7/php7.y:2084 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5028,7 +5032,7 @@ yydefault: } case 400: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2086 + //line php7/php7.y:2090 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5036,7 +5040,7 @@ yydefault: } case 401: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2092 + //line php7/php7.y:2096 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5044,7 +5048,7 @@ yydefault: } case 402: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2098 + //line php7/php7.y:2102 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5052,7 +5056,7 @@ yydefault: } case 403: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2104 + //line php7/php7.y:2108 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5060,7 +5064,7 @@ yydefault: } case 404: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2110 + //line php7/php7.y:2114 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5068,7 +5072,7 @@ yydefault: } case 405: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2116 + //line php7/php7.y:2120 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5076,7 +5080,7 @@ yydefault: } case 406: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2122 + //line php7/php7.y:2126 { yyVAL.node = scalar.NewString(yyDollar[2].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) /* TODO: mark as Heredoc*/ @@ -5084,7 +5088,7 @@ yydefault: } case 407: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2127 + //line php7/php7.y:2131 { yyVAL.node = scalar.NewEncapsed(nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[2].token)) @@ -5092,7 +5096,7 @@ yydefault: } case 408: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2133 + //line php7/php7.y:2137 { yyVAL.node = scalar.NewEncapsed(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5100,7 +5104,7 @@ yydefault: } case 409: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2139 + //line php7/php7.y:2143 { yyVAL.node = scalar.NewEncapsed(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5108,19 +5112,19 @@ yydefault: } case 410: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2144 + //line php7/php7.y:2148 { yyVAL.node = yyDollar[1].node } case 411: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2145 + //line php7/php7.y:2149 { yyVAL.node = yyDollar[1].node } case 412: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2150 + //line php7/php7.y:2154 { yyVAL.node = expr.NewConstFetch(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -5128,7 +5132,7 @@ yydefault: } case 413: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2156 + //line php7/php7.y:2160 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -5140,7 +5144,7 @@ yydefault: } case 414: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2166 + //line php7/php7.y:2170 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -5152,79 +5156,79 @@ yydefault: } case 415: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2178 + //line php7/php7.y:2182 { yyVAL.node = yyDollar[1].node } case 416: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2179 + //line php7/php7.y:2183 { yyVAL.node = yyDollar[1].node } case 417: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:2183 + //line php7/php7.y:2187 { yyVAL.node = nil } case 418: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2184 + //line php7/php7.y:2188 { yyVAL.node = yyDollar[1].node } case 419: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2188 + //line php7/php7.y:2192 { yyVAL.node = yyDollar[1].node } case 420: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2192 + //line php7/php7.y:2196 { yyVAL.node = yyDollar[1].node } case 421: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2193 + //line php7/php7.y:2197 { yyVAL.node = yyDollar[2].node } case 422: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2194 + //line php7/php7.y:2198 { yyVAL.node = yyDollar[1].node } case 423: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2198 + //line php7/php7.y:2202 { yyVAL.node = yyDollar[1].node } case 424: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2199 + //line php7/php7.y:2203 { yyVAL.node = yyDollar[2].node } case 425: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2200 + //line php7/php7.y:2204 { yyVAL.node = yyDollar[1].node } case 426: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2204 + //line php7/php7.y:2208 { yyVAL.node = yyDollar[1].node } case 427: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2206 + //line php7/php7.y:2210 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5232,7 +5236,7 @@ yydefault: } case 428: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2212 + //line php7/php7.y:2216 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5240,7 +5244,7 @@ yydefault: } case 429: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2218 + //line php7/php7.y:2222 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5248,7 +5252,7 @@ yydefault: } case 430: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2224 + //line php7/php7.y:2228 { yyVAL.node = expr.NewMethodCall(yyDollar[1].node, yyDollar[3].node, yyDollar[4].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].nodesWithEndToken.endToken)) @@ -5256,25 +5260,25 @@ yydefault: } case 431: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2229 + //line php7/php7.y:2233 { yyVAL.node = yyDollar[1].node } case 432: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2233 + //line php7/php7.y:2237 { yyVAL.node = yyDollar[1].node } case 433: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2234 + //line php7/php7.y:2238 { yyVAL.node = yyDollar[1].node } case 434: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2236 + //line php7/php7.y:2240 { yyVAL.node = expr.NewPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5282,7 +5286,7 @@ yydefault: } case 435: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2245 + //line php7/php7.y:2249 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5294,7 +5298,7 @@ yydefault: } case 436: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2255 + //line php7/php7.y:2259 { yyVAL.node = expr.NewVariable(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5302,7 +5306,7 @@ yydefault: } case 437: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2261 + //line php7/php7.y:2265 { yyVAL.node = expr.NewVariable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5310,7 +5314,7 @@ yydefault: } case 438: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2270 + //line php7/php7.y:2274 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5318,7 +5322,7 @@ yydefault: } case 439: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2276 + //line php7/php7.y:2280 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5326,13 +5330,13 @@ yydefault: } case 440: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2284 + //line php7/php7.y:2288 { yyVAL.node = yyDollar[1].node } case 441: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2286 + //line php7/php7.y:2290 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5340,7 +5344,7 @@ yydefault: } case 442: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2292 + //line php7/php7.y:2296 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5348,7 +5352,7 @@ yydefault: } case 443: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2298 + //line php7/php7.y:2302 { yyVAL.node = expr.NewPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5356,7 +5360,7 @@ yydefault: } case 444: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2304 + //line php7/php7.y:2308 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5364,7 +5368,7 @@ yydefault: } case 445: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2310 + //line php7/php7.y:2314 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5372,7 +5376,7 @@ yydefault: } case 446: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2319 + //line php7/php7.y:2323 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5380,19 +5384,19 @@ yydefault: } case 447: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2324 + //line php7/php7.y:2328 { yyVAL.node = yyDollar[2].node } case 448: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2325 + //line php7/php7.y:2329 { yyVAL.node = yyDollar[1].node } case 449: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2330 + //line php7/php7.y:2334 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5400,19 +5404,19 @@ yydefault: } case 450: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2335 + //line php7/php7.y:2339 { yyVAL.node = yyDollar[2].node } case 451: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2336 + //line php7/php7.y:2340 { yyVAL.node = yyDollar[1].node } case 452: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2341 + //line php7/php7.y:2345 { if yyDollar[1].list[len(yyDollar[1].list)-1] == nil { yyVAL.list = yyDollar[1].list[:len(yyDollar[1].list)-1] @@ -5422,31 +5426,31 @@ yydefault: } case 453: yyDollar = yyS[yypt-0 : yypt+1] - //line php7/php7.y:2351 + //line php7/php7.y:2355 { yyVAL.node = nil } case 454: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2352 + //line php7/php7.y:2356 { yyVAL.node = yyDollar[1].node } case 455: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2357 + //line php7/php7.y:2361 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 456: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2358 + //line php7/php7.y:2362 { yyVAL.list = []node.Node{yyDollar[1].node} } case 457: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2363 + //line php7/php7.y:2367 { yyVAL.node = expr.NewArrayItem(yyDollar[1].node, yyDollar[3].node, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5454,7 +5458,7 @@ yydefault: } case 458: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2369 + //line php7/php7.y:2373 { yyVAL.node = expr.NewArrayItem(nil, yyDollar[1].node, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -5462,7 +5466,7 @@ yydefault: } case 459: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2375 + //line php7/php7.y:2379 { yyVAL.node = expr.NewArrayItem(yyDollar[1].node, yyDollar[4].node, true) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -5470,7 +5474,7 @@ yydefault: } case 460: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2381 + //line php7/php7.y:2385 { yyVAL.node = expr.NewArrayItem(nil, yyDollar[2].node, true) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5478,7 +5482,7 @@ yydefault: } case 461: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:2387 + //line php7/php7.y:2391 { // TODO: Cannot use list() as standalone expression list := expr.NewList(yyDollar[5].list) @@ -5491,7 +5495,7 @@ yydefault: } case 462: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2398 + //line php7/php7.y:2402 { // TODO: Cannot use list() as standalone expression list := expr.NewList(yyDollar[3].list) @@ -5504,13 +5508,13 @@ yydefault: } case 463: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2411 + //line php7/php7.y:2415 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 464: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2413 + //line php7/php7.y:2417 { encapsed := scalar.NewEncapsedStringPart(yyDollar[2].token.Value) positions.AddPosition(encapsed, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5519,13 +5523,13 @@ yydefault: } case 465: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2419 + //line php7/php7.y:2423 { yyVAL.list = []node.Node{yyDollar[1].node} } case 466: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2421 + //line php7/php7.y:2425 { encapsed := scalar.NewEncapsedStringPart(yyDollar[1].token.Value) positions.AddPosition(encapsed, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5534,7 +5538,7 @@ yydefault: } case 467: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2431 + //line php7/php7.y:2435 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5546,7 +5550,7 @@ yydefault: } case 468: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2441 + //line php7/php7.y:2445 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5561,7 +5565,7 @@ yydefault: } case 469: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2454 + //line php7/php7.y:2458 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5579,7 +5583,7 @@ yydefault: } case 470: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2470 + //line php7/php7.y:2474 { yyVAL.node = expr.NewVariable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5587,7 +5591,7 @@ yydefault: } case 471: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2476 + //line php7/php7.y:2480 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5599,7 +5603,7 @@ yydefault: } case 472: yyDollar = yyS[yypt-6 : yypt+1] - //line php7/php7.y:2486 + //line php7/php7.y:2490 { identifier := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5614,13 +5618,13 @@ yydefault: } case 473: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2499 + //line php7/php7.y:2503 { yyVAL.node = yyDollar[2].node } case 474: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2503 + //line php7/php7.y:2507 { yyVAL.node = scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5628,7 +5632,7 @@ yydefault: } case 475: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2509 + //line php7/php7.y:2513 { // TODO: add option to handle 64 bit integer if _, err := strconv.Atoi(yyDollar[1].token.Value); err == nil { @@ -5642,7 +5646,7 @@ yydefault: } case 476: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2521 + //line php7/php7.y:2525 { // TODO: add option to handle 64 bit integer if _, err := strconv.Atoi(yyDollar[2].token.Value); err == nil { @@ -5662,7 +5666,7 @@ yydefault: } case 477: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2539 + //line php7/php7.y:2543 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5674,7 +5678,7 @@ yydefault: } case 478: yyDollar = yyS[yypt-5 : yypt+1] - //line php7/php7.y:2552 + //line php7/php7.y:2556 { yyVAL.node = expr.NewIsset(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[5].token)) @@ -5682,7 +5686,7 @@ yydefault: } case 479: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2558 + //line php7/php7.y:2562 { yyVAL.node = expr.NewEmpty(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5690,7 +5694,7 @@ yydefault: } case 480: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2564 + //line php7/php7.y:2568 { yyVAL.node = expr.NewInclude(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5698,7 +5702,7 @@ yydefault: } case 481: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2570 + //line php7/php7.y:2574 { yyVAL.node = expr.NewIncludeOnce(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5706,7 +5710,7 @@ yydefault: } case 482: yyDollar = yyS[yypt-4 : yypt+1] - //line php7/php7.y:2576 + //line php7/php7.y:2580 { yyVAL.node = expr.NewEval(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5714,7 +5718,7 @@ yydefault: } case 483: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2582 + //line php7/php7.y:2586 { yyVAL.node = expr.NewRequire(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5722,7 +5726,7 @@ yydefault: } case 484: yyDollar = yyS[yypt-2 : yypt+1] - //line php7/php7.y:2588 + //line php7/php7.y:2592 { yyVAL.node = expr.NewRequireOnce(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5730,19 +5734,19 @@ yydefault: } case 485: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2596 + //line php7/php7.y:2600 { yyVAL.list = []node.Node{yyDollar[1].node} } case 486: yyDollar = yyS[yypt-3 : yypt+1] - //line php7/php7.y:2597 + //line php7/php7.y:2601 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 487: yyDollar = yyS[yypt-1 : yypt+1] - //line php7/php7.y:2601 + //line php7/php7.y:2605 { yyVAL.node = yyDollar[1].node } diff --git a/php7/php7.y b/php7/php7.y index d6e895a..ce607c4 100644 --- a/php7/php7.y +++ b/php7/php7.y @@ -552,7 +552,11 @@ statement: } | T_SWITCH '(' expr ')' switch_case_list { - $$ = stmt.NewSwitch($3, $5.nodes) + if ($5.endToken.Value == ";") { + $$ = stmt.NewAltSwitch($3, $5.nodes) + } else { + $$ = stmt.NewSwitch($3, $5.nodes) + } positions.AddPosition($$, positionBuilder.NewTokensPosition($1, $5.endToken)) comments.AddComments($$, $1.Comments()) } diff --git a/php7/php7_test.go b/php7/php7_test.go index 65049a8..303ce26 100644 --- a/php7/php7_test.go +++ b/php7/php7_test.go @@ -1423,7 +1423,7 @@ CAD; }, }, }, - &stmt.Switch{ + &stmt.AltSwitch{ Cond: &scalar.Lnumber{Value: "1"}, Cases: []node.Node{ &stmt.Case{ @@ -1439,7 +1439,7 @@ CAD; }, }, }, - &stmt.Switch{ + &stmt.AltSwitch{ Cond: &scalar.Lnumber{Value: "1"}, Cases: []node.Node{ &stmt.Case{