remove unused attributes fields
This commit is contained in:
111
parser/parser.go
111
parser/parser.go
@@ -5,10 +5,6 @@ import __yyfmt__ "fmt"
|
||||
|
||||
//line parser/parser.y:2
|
||||
import (
|
||||
"io"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/z7zmey/php-parser/node"
|
||||
"github.com/z7zmey/php-parser/node/expr"
|
||||
"github.com/z7zmey/php-parser/node/expr/assign_op"
|
||||
@@ -18,9 +14,12 @@ import (
|
||||
"github.com/z7zmey/php-parser/node/scalar"
|
||||
"github.com/z7zmey/php-parser/node/stmt"
|
||||
"github.com/z7zmey/php-parser/token"
|
||||
"io"
|
||||
"strconv"
|
||||
"strings"
|
||||
)
|
||||
|
||||
var rootnode node.Node
|
||||
var rootnode = stmt.NewStmtList([]node.Node{})
|
||||
|
||||
func Parse(src io.Reader, fName string) node.Node {
|
||||
yyDebug = 0
|
||||
@@ -2668,13 +2667,13 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:333
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 100:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:334
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 101:
|
||||
yyDollar = yyS[yypt-6 : yypt+1]
|
||||
@@ -2766,7 +2765,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:396
|
||||
{
|
||||
yyVAL.node = stmt.NewUse(nil, name.NewName(yyDollar[1].list).SetPosition(NewNodeListPosition(yyDollar[1].list)), node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeListTokenPosition(yyDollar[1].list, yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewUse(nil, name.NewName(yyDollar[1].list).SetPosition(NewNodeListPosition(yyDollar[1].list)), node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeListTokenPosition(yyDollar[1].list, yyDollar[3].token))
|
||||
}
|
||||
case 117:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
@@ -2980,13 +2979,13 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:457
|
||||
{
|
||||
yyVAL.node = stmt.NewGoto(node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewGoto(node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[3].token))
|
||||
}
|
||||
case 152:
|
||||
yyDollar = yyS[yypt-2 : yypt+1]
|
||||
//line parser/parser.y:458
|
||||
{
|
||||
yyVAL.node = stmt.NewLabel(node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[2].token))
|
||||
yyVAL.node = stmt.NewLabel(node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[2].token))
|
||||
}
|
||||
case 153:
|
||||
yyDollar = yyS[yypt-0 : yypt+1]
|
||||
@@ -2998,7 +2997,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-9 : yypt+1]
|
||||
//line parser/parser.y:463
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[5].token).SetPosition(NewTokenPosition(yyDollar[5].token))
|
||||
identifier := node.NewIdentifier(yyDollar[5].token.Value).SetPosition(NewTokenPosition(yyDollar[5].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[5].token))
|
||||
yyVAL.list = append(yyDollar[1].list, stmt.NewCatch(yyDollar[4].list, variable, yyDollar[8].list).SetPosition(NewTokensPosition(yyDollar[2].token, yyDollar[9].token)))
|
||||
}
|
||||
@@ -3048,7 +3047,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-11 : yypt+1]
|
||||
//line parser/parser.y:490
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))
|
||||
name := node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewFunction(name, yyDollar[2].boolWithToken.value, yyDollar[6].list, yyDollar[8].node, yyDollar[10].list, yyDollar[4].str).
|
||||
SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[11].token))
|
||||
}
|
||||
@@ -3080,7 +3079,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-9 : yypt+1]
|
||||
//line parser/parser.y:509
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))
|
||||
name := node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewClass(name, yyDollar[1].list, nil, yyDollar[4].node, yyDollar[5].list, yyDollar[8].list, yyDollar[6].str).
|
||||
SetPosition(NewOptionalListTokensPosition(yyDollar[1].list, yyDollar[2].token, yyDollar[9].token))
|
||||
}
|
||||
@@ -3088,7 +3087,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-8 : yypt+1]
|
||||
//line parser/parser.y:515
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
name := node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
yyVAL.node = stmt.NewClass(name, nil, nil, yyDollar[3].node, yyDollar[4].list, yyDollar[7].list, yyDollar[5].str).
|
||||
SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[8].token))
|
||||
}
|
||||
@@ -3108,19 +3107,19 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:528
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 172:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:529
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 173:
|
||||
yyDollar = yyS[yypt-6 : yypt+1]
|
||||
//line parser/parser.y:534
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
name := node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
yyVAL.node = stmt.NewTrait(name, yyDollar[5].list, yyDollar[3].str).
|
||||
SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[6].token))
|
||||
}
|
||||
@@ -3128,7 +3127,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-7 : yypt+1]
|
||||
//line parser/parser.y:543
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
name := node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
yyVAL.node = stmt.NewInterface(name, yyDollar[3].list, yyDollar[6].list, yyDollar[4].str).
|
||||
SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[7].token))
|
||||
}
|
||||
@@ -3362,7 +3361,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
//line parser/parser.y:667
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[4].token).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
identifier := node.NewIdentifier(yyDollar[4].token.Value).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
if yyDollar[1].node != nil {
|
||||
yyVAL.node = node.NewParameter(yyDollar[1].node, variable, nil, yyDollar[2].boolWithToken.value, yyDollar[3].boolWithToken.value).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token))
|
||||
@@ -3378,7 +3377,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-6 : yypt+1]
|
||||
//line parser/parser.y:681
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[4].token).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
identifier := node.NewIdentifier(yyDollar[4].token.Value).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
if yyDollar[1].node != nil {
|
||||
yyVAL.node = node.NewParameter(yyDollar[1].node, variable, yyDollar[6].node, yyDollar[2].boolWithToken.value, yyDollar[3].boolWithToken.value).SetPosition(NewNodesPosition(yyDollar[1].node, yyDollar[6].node))
|
||||
@@ -3418,13 +3417,13 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:707
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 221:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:708
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 222:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
@@ -3514,7 +3513,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:748
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewStaticVar(variable, nil).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
@@ -3522,7 +3521,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:754
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewStaticVar(variable, yyDollar[3].node).SetPosition(NewTokenNodePosition(yyDollar[1].token, yyDollar[3].node))
|
||||
}
|
||||
@@ -3560,7 +3559,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-10 : yypt+1]
|
||||
//line parser/parser.y:771
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[4].token).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
name := node.NewIdentifier(yyDollar[4].token.Value).SetPosition(NewTokenPosition(yyDollar[4].token))
|
||||
yyVAL.node = stmt.NewClassMethod(name, yyDollar[1].list, yyDollar[3].boolWithToken.value, yyDollar[7].list, yyDollar[9].node, yyDollar[10].nodesWithEndToken.nodes, yyDollar[5].str).
|
||||
SetPosition(NewOptionalListTokensPosition(yyDollar[1].list, yyDollar[2].token, yyDollar[10].nodesWithEndToken.endToken))
|
||||
}
|
||||
@@ -3629,19 +3628,19 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:808
|
||||
{
|
||||
yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, nil, node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, nil, node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
}
|
||||
case 255:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:810
|
||||
{
|
||||
yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, nil, node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, nil, node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
}
|
||||
case 256:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
//line parser/parser.y:812
|
||||
{
|
||||
yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, yyDollar[3].node, node.NewIdentifier(yyDollar[4].token).SetPosition(NewTokenPosition(yyDollar[4].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token))
|
||||
yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, yyDollar[3].node, node.NewIdentifier(yyDollar[4].token.Value).SetPosition(NewTokenPosition(yyDollar[4].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token))
|
||||
}
|
||||
case 257:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
@@ -3653,7 +3652,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:817
|
||||
{
|
||||
yyVAL.node = stmt.NewTraitMethodRef(nil, node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewTraitMethodRef(nil, node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 259:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
@@ -3665,7 +3664,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:822
|
||||
{
|
||||
yyVAL.node = stmt.NewTraitMethodRef(yyDollar[1].node, node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
yyVAL.node = stmt.NewTraitMethodRef(yyDollar[1].node, node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
}
|
||||
case 261:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
@@ -3689,7 +3688,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:832
|
||||
{
|
||||
yyVAL.list = []node.Node{node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))}
|
||||
yyVAL.list = []node.Node{node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))}
|
||||
}
|
||||
case 265:
|
||||
yyDollar = yyS[yypt-0 : yypt+1]
|
||||
@@ -3719,37 +3718,37 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:846
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 270:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:847
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 271:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:848
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 272:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:849
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 273:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:850
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 274:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:851
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 275:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
@@ -3767,7 +3766,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-2 : yypt+1]
|
||||
//line parser/parser.y:861
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewProperty(variable, nil, yyDollar[2].str).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
@@ -3775,7 +3774,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
//line parser/parser.y:867
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewProperty(variable, yyDollar[3].node, yyDollar[4].str).SetPosition(NewTokenNodePosition(yyDollar[1].token, yyDollar[3].node))
|
||||
}
|
||||
@@ -3795,14 +3794,14 @@ yydefault:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
//line parser/parser.y:881
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
name := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewConstant(name, yyDollar[3].node, yyDollar[4].str).SetPosition(NewTokenNodePosition(yyDollar[1].token, yyDollar[3].node))
|
||||
}
|
||||
case 282:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
//line parser/parser.y:889
|
||||
{
|
||||
name := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
name := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = stmt.NewConstant(name, yyDollar[3].node, yyDollar[4].str).SetPosition(NewTokenNodePosition(yyDollar[1].token, yyDollar[3].node))
|
||||
}
|
||||
case 283:
|
||||
@@ -4380,7 +4379,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1052
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = expr.NewClusureUse(variable, false).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
@@ -4388,7 +4387,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-2 : yypt+1]
|
||||
//line parser/parser.y:1058
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
identifier := node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
yyVAL.node = expr.NewClusureUse(variable, true).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[2].token))
|
||||
}
|
||||
@@ -4420,7 +4419,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1079
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 383:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
@@ -4606,13 +4605,13 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:1133
|
||||
{
|
||||
yyVAL.node = expr.NewClassConstFetch(yyDollar[1].node, node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
yyVAL.node = expr.NewClassConstFetch(yyDollar[1].node, node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
}
|
||||
case 414:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:1135
|
||||
{
|
||||
yyVAL.node = expr.NewClassConstFetch(yyDollar[1].node, node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
yyVAL.node = expr.NewClassConstFetch(yyDollar[1].node, node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).SetPosition(NewNodeTokenPosition(yyDollar[1].node, yyDollar[3].token))
|
||||
}
|
||||
case 415:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
@@ -4738,7 +4737,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1181
|
||||
{
|
||||
yyVAL.node = expr.NewVariable(node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = expr.NewVariable(node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 436:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
@@ -4804,7 +4803,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1213
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 447:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
@@ -4822,7 +4821,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1219
|
||||
{
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 450:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
@@ -4940,13 +4939,13 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1275
|
||||
{
|
||||
yyVAL.node = expr.NewVariable(node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = expr.NewVariable(node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 468:
|
||||
yyDollar = yyS[yypt-4 : yypt+1]
|
||||
//line parser/parser.y:1277
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = expr.NewArrayDimFetch(variable, yyDollar[3].node).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[4].token))
|
||||
}
|
||||
@@ -4954,9 +4953,9 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:1283
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = expr.NewPropertyFetch(variable, node.NewIdentifier(yyDollar[3].token).SetPosition(NewTokenPosition(yyDollar[3].token))).
|
||||
yyVAL.node = expr.NewPropertyFetch(variable, node.NewIdentifier(yyDollar[3].token.Value).SetPosition(NewTokenPosition(yyDollar[3].token))).
|
||||
SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[3].token))
|
||||
}
|
||||
case 470:
|
||||
@@ -4969,13 +4968,13 @@ yydefault:
|
||||
yyDollar = yyS[yypt-3 : yypt+1]
|
||||
//line parser/parser.y:1290
|
||||
{
|
||||
yyVAL.node = expr.NewVariable(node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[3].token))
|
||||
yyVAL.node = expr.NewVariable(node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[3].token))
|
||||
}
|
||||
case 472:
|
||||
yyDollar = yyS[yypt-6 : yypt+1]
|
||||
//line parser/parser.y:1292
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[2].token).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
identifier := node.NewIdentifier(yyDollar[2].token.Value).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[2].token))
|
||||
yyVAL.node = expr.NewArrayDimFetch(variable, yyDollar[4].node).SetPosition(NewTokensPosition(yyDollar[1].token, yyDollar[6].token))
|
||||
}
|
||||
@@ -5019,7 +5018,7 @@ yydefault:
|
||||
yyDollar = yyS[yypt-1 : yypt+1]
|
||||
//line parser/parser.y:1322
|
||||
{
|
||||
identifier := node.NewIdentifier(yyDollar[1].token).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
identifier := node.NewIdentifier(yyDollar[1].token.Value).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
yyVAL.node = expr.NewVariable(identifier).SetPosition(NewTokenPosition(yyDollar[1].token))
|
||||
}
|
||||
case 478:
|
||||
|
||||
102
parser/parser.y
102
parser/parser.y
@@ -330,8 +330,8 @@ top_statement:
|
||||
;
|
||||
|
||||
use_type:
|
||||
T_FUNCTION { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_CONST { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
T_FUNCTION { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_CONST { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
;
|
||||
|
||||
group_use_declaration:
|
||||
@@ -393,7 +393,7 @@ inline_use_declaration:
|
||||
|
||||
unprefixed_use_declaration:
|
||||
namespace_name { $$ = stmt.NewUse(nil, name.NewName($1).SetPosition(NewNodeListPosition($1)), nil).SetPosition(NewNodeListPosition($1)) }
|
||||
| namespace_name T_AS T_STRING { $$ = stmt.NewUse(nil, name.NewName($1).SetPosition(NewNodeListPosition($1)), node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeListTokenPosition($1, $3)) }
|
||||
| namespace_name T_AS T_STRING { $$ = stmt.NewUse(nil, name.NewName($1).SetPosition(NewNodeListPosition($1)), node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeListTokenPosition($1, $3)) }
|
||||
;
|
||||
|
||||
use_declaration:
|
||||
@@ -454,14 +454,14 @@ statement:
|
||||
}
|
||||
}
|
||||
| T_THROW expr ';' { $$ = stmt.NewThrow($2).SetPosition(NewTokensPosition($1, $3)) }
|
||||
| T_GOTO T_STRING ';' { $$ = stmt.NewGoto(node.NewIdentifier($2).SetPosition(NewTokenPosition($2))).SetPosition(NewTokensPosition($1, $3)) }
|
||||
| T_STRING ':' { $$ = stmt.NewLabel(node.NewIdentifier($1).SetPosition(NewTokenPosition($1))).SetPosition(NewTokensPosition($1, $2)) }
|
||||
| T_GOTO T_STRING ';' { $$ = stmt.NewGoto(node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))).SetPosition(NewTokensPosition($1, $3)) }
|
||||
| T_STRING ':' { $$ = stmt.NewLabel(node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))).SetPosition(NewTokensPosition($1, $2)) }
|
||||
|
||||
catch_list:
|
||||
/* empty */ { $$ = []node.Node{} }
|
||||
| catch_list T_CATCH '(' catch_name_list T_VARIABLE ')' '{' inner_statement_list '}'
|
||||
{
|
||||
identifier := node.NewIdentifier($5).SetPosition(NewTokenPosition($5))
|
||||
identifier := node.NewIdentifier($5.Value).SetPosition(NewTokenPosition($5))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($5))
|
||||
$$ = append($1, stmt.NewCatch($4, variable, $8).SetPosition(NewTokensPosition($2, $9)))
|
||||
}
|
||||
@@ -488,7 +488,7 @@ unset_variable:
|
||||
function_declaration_statement:
|
||||
T_FUNCTION returns_ref T_STRING backup_doc_comment '(' parameter_list ')' return_type '{' inner_statement_list '}'
|
||||
{
|
||||
name := node.NewIdentifier($3).SetPosition(NewTokenPosition($3))
|
||||
name := node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))
|
||||
$$ = stmt.NewFunction(name, $2.value, $6, $8, $10, $4).
|
||||
SetPosition(NewTokensPosition($1, $11))
|
||||
}
|
||||
@@ -507,13 +507,13 @@ is_variadic:
|
||||
class_declaration_statement:
|
||||
class_modifiers T_CLASS T_STRING extends_from implements_list backup_doc_comment '{' class_statement_list '}'
|
||||
{
|
||||
name := node.NewIdentifier($3).SetPosition(NewTokenPosition($3))
|
||||
name := node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))
|
||||
$$ = stmt.NewClass(name, $1, nil, $4, $5, $8, $6).
|
||||
SetPosition(NewOptionalListTokensPosition($1, $2, $9))
|
||||
}
|
||||
| T_CLASS T_STRING extends_from implements_list backup_doc_comment '{' class_statement_list '}'
|
||||
{
|
||||
name := node.NewIdentifier($2).SetPosition(NewTokenPosition($2))
|
||||
name := node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))
|
||||
$$ = stmt.NewClass(name, nil, nil, $3, $4, $7, $5).
|
||||
SetPosition(NewTokensPosition($1, $8))
|
||||
}
|
||||
@@ -525,14 +525,14 @@ class_modifiers:
|
||||
;
|
||||
|
||||
class_modifier:
|
||||
T_ABSTRACT { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_FINAL { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
T_ABSTRACT { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_FINAL { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
;
|
||||
|
||||
trait_declaration_statement:
|
||||
T_TRAIT T_STRING backup_doc_comment '{' class_statement_list '}'
|
||||
{
|
||||
name := node.NewIdentifier($2).SetPosition(NewTokenPosition($2))
|
||||
name := node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))
|
||||
$$ = stmt.NewTrait(name, $5, $3).
|
||||
SetPosition(NewTokensPosition($1, $6))
|
||||
}
|
||||
@@ -541,7 +541,7 @@ trait_declaration_statement:
|
||||
interface_declaration_statement:
|
||||
T_INTERFACE T_STRING interface_extends_list backup_doc_comment '{' class_statement_list '}'
|
||||
{
|
||||
name := node.NewIdentifier($2).SetPosition(NewTokenPosition($2))
|
||||
name := node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))
|
||||
$$ = stmt.NewInterface(name, $3, $6, $4).
|
||||
SetPosition(NewTokensPosition($1, $7))
|
||||
}
|
||||
@@ -665,7 +665,7 @@ non_empty_parameter_list:
|
||||
parameter:
|
||||
optional_type is_reference is_variadic T_VARIABLE
|
||||
{
|
||||
identifier := node.NewIdentifier($4).SetPosition(NewTokenPosition($4))
|
||||
identifier := node.NewIdentifier($4.Value).SetPosition(NewTokenPosition($4))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($4))
|
||||
if $1 != nil {
|
||||
$$ = node.NewParameter($1, variable, nil, $2.value, $3.value).SetPosition(NewNodeTokenPosition($1, $4))
|
||||
@@ -679,7 +679,7 @@ parameter:
|
||||
}
|
||||
| optional_type is_reference is_variadic T_VARIABLE '=' expr
|
||||
{
|
||||
identifier := node.NewIdentifier($4).SetPosition(NewTokenPosition($4))
|
||||
identifier := node.NewIdentifier($4.Value).SetPosition(NewTokenPosition($4))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($4))
|
||||
if $1 != nil {
|
||||
$$ = node.NewParameter($1, variable, $6, $2.value, $3.value).SetPosition(NewNodesPosition($1, $6))
|
||||
@@ -704,8 +704,8 @@ type_expr:
|
||||
;
|
||||
|
||||
type:
|
||||
T_ARRAY { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_CALLABLE { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
T_ARRAY { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_CALLABLE { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| name { $$ = $1; }
|
||||
;
|
||||
|
||||
@@ -746,13 +746,13 @@ static_var_list:
|
||||
static_var:
|
||||
T_VARIABLE
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = stmt.NewStaticVar(variable, nil).SetPosition(NewTokenPosition($1))
|
||||
}
|
||||
| T_VARIABLE '=' expr
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = stmt.NewStaticVar(variable, $3).SetPosition(NewTokenNodePosition($1, $3))
|
||||
}
|
||||
@@ -769,7 +769,7 @@ class_statement:
|
||||
| T_USE name_list trait_adaptations { $$ = stmt.NewTraitUse($2, $3.nodes).SetPosition(NewTokensPosition($1, $3.endToken)) }
|
||||
| method_modifiers T_FUNCTION returns_ref identifier backup_doc_comment '(' parameter_list ')' return_type method_body
|
||||
{
|
||||
name := node.NewIdentifier($4).SetPosition(NewTokenPosition($4))
|
||||
name := node.NewIdentifier($4.Value).SetPosition(NewTokenPosition($4))
|
||||
$$ = stmt.NewClassMethod(name, $1, $3.value, $7, $9, $10.nodes, $5).
|
||||
SetPosition(NewOptionalListTokensPosition($1, $2, $10.endToken))
|
||||
}
|
||||
@@ -805,21 +805,21 @@ trait_precedence:
|
||||
;
|
||||
|
||||
trait_alias:
|
||||
trait_method_reference T_AS T_STRING { $$ = stmt.NewTraitUseAlias($1, nil, node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
trait_method_reference T_AS T_STRING { $$ = stmt.NewTraitUseAlias($1, nil, node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
| trait_method_reference T_AS reserved_non_modifiers
|
||||
{ $$ = stmt.NewTraitUseAlias($1, nil, node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
{ $$ = stmt.NewTraitUseAlias($1, nil, node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
| trait_method_reference T_AS member_modifier identifier
|
||||
{ $$ = stmt.NewTraitUseAlias($1, $3, node.NewIdentifier($4).SetPosition(NewTokenPosition($4))).SetPosition(NewNodeTokenPosition($1, $4)) }
|
||||
{ $$ = stmt.NewTraitUseAlias($1, $3, node.NewIdentifier($4.Value).SetPosition(NewTokenPosition($4))).SetPosition(NewNodeTokenPosition($1, $4)) }
|
||||
| trait_method_reference T_AS member_modifier { $$ = stmt.NewTraitUseAlias($1, $3, nil).SetPosition(NewNodesPosition($1, $3)) }
|
||||
;
|
||||
|
||||
trait_method_reference:
|
||||
identifier { $$ = stmt.NewTraitMethodRef(nil, node.NewIdentifier($1).SetPosition(NewTokenPosition($1))).SetPosition(NewTokenPosition($1)) }
|
||||
identifier { $$ = stmt.NewTraitMethodRef(nil, node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))).SetPosition(NewTokenPosition($1)) }
|
||||
| absolute_trait_method_reference { $$ = $1; }
|
||||
;
|
||||
|
||||
absolute_trait_method_reference:
|
||||
name T_PAAMAYIM_NEKUDOTAYIM identifier { $$ = stmt.NewTraitMethodRef($1, node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
name T_PAAMAYIM_NEKUDOTAYIM identifier { $$ = stmt.NewTraitMethodRef($1, node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
;
|
||||
|
||||
method_body:
|
||||
@@ -829,7 +829,7 @@ method_body:
|
||||
|
||||
variable_modifiers:
|
||||
non_empty_member_modifiers { $$ = $1; }
|
||||
| T_VAR { $$ = []node.Node{node.NewIdentifier($1).SetPosition(NewTokenPosition($1))} }
|
||||
| T_VAR { $$ = []node.Node{node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))} }
|
||||
;
|
||||
|
||||
method_modifiers:
|
||||
@@ -843,12 +843,12 @@ non_empty_member_modifiers:
|
||||
;
|
||||
|
||||
member_modifier:
|
||||
T_PUBLIC { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_PROTECTED { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_PRIVATE { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_STATIC { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_ABSTRACT { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
| T_FINAL { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
T_PUBLIC { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_PROTECTED { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_PRIVATE { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_STATIC { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_ABSTRACT { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| T_FINAL { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
;
|
||||
|
||||
property_list:
|
||||
@@ -859,13 +859,13 @@ property_list:
|
||||
property:
|
||||
T_VARIABLE backup_doc_comment
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = stmt.NewProperty(variable, nil, $2).SetPosition(NewTokenPosition($1))
|
||||
}
|
||||
| T_VARIABLE '=' expr backup_doc_comment
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = stmt.NewProperty(variable, $3, $4).SetPosition(NewTokenNodePosition($1, $3))
|
||||
}
|
||||
@@ -879,7 +879,7 @@ class_const_list:
|
||||
class_const_decl:
|
||||
identifier '=' expr backup_doc_comment
|
||||
{
|
||||
name := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
name := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
$$ = stmt.NewConstant(name, $3, $4).SetPosition(NewTokenNodePosition($1, $3))
|
||||
}
|
||||
;
|
||||
@@ -887,7 +887,7 @@ class_const_decl:
|
||||
const_decl:
|
||||
T_STRING '=' expr backup_doc_comment
|
||||
{
|
||||
name := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
name := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
$$ = stmt.NewConstant(name, $3, $4).SetPosition(NewTokenNodePosition($1, $3))
|
||||
}
|
||||
;
|
||||
@@ -1050,13 +1050,13 @@ lexical_var_list:
|
||||
lexical_var:
|
||||
T_VARIABLE
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = expr.NewClusureUse(variable, false).SetPosition(NewTokenPosition($1))
|
||||
}
|
||||
| '&' T_VARIABLE
|
||||
{
|
||||
identifier := node.NewIdentifier($2).SetPosition(NewTokenPosition($2))
|
||||
identifier := node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($2))
|
||||
$$ = expr.NewClusureUse(variable, true).SetPosition(NewTokensPosition($1, $2))
|
||||
}
|
||||
@@ -1076,7 +1076,7 @@ function_call:
|
||||
;
|
||||
|
||||
class_name:
|
||||
T_STATIC { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
T_STATIC { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| name { $$ = $1; }
|
||||
;
|
||||
|
||||
@@ -1130,9 +1130,9 @@ scalar:
|
||||
|
||||
constant:
|
||||
name { $$ = expr.NewConstFetch($1).SetPosition(NewNodePosition($1)) }
|
||||
| class_name T_PAAMAYIM_NEKUDOTAYIM identifier { $$ = expr.NewClassConstFetch($1, node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
| class_name T_PAAMAYIM_NEKUDOTAYIM identifier { $$ = expr.NewClassConstFetch($1, node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
| variable_class_name T_PAAMAYIM_NEKUDOTAYIM identifier
|
||||
{ $$ = expr.NewClassConstFetch($1, node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
{ $$ = expr.NewClassConstFetch($1, node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).SetPosition(NewNodeTokenPosition($1, $3)) }
|
||||
;
|
||||
|
||||
expr:
|
||||
@@ -1178,7 +1178,7 @@ variable:
|
||||
;
|
||||
|
||||
simple_variable:
|
||||
T_VARIABLE { $$ = expr.NewVariable(node.NewIdentifier($1).SetPosition(NewTokenPosition($1))).SetPosition(NewTokenPosition($1)) }
|
||||
T_VARIABLE { $$ = expr.NewVariable(node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))).SetPosition(NewTokenPosition($1)) }
|
||||
| '$' '{' expr '}' { $$ = expr.NewVariable($3).SetPosition(NewTokensPosition($1, $4)) }
|
||||
| '$' simple_variable { $$ = expr.NewVariable($2).SetPosition(NewTokenNodePosition($1, $2)) }
|
||||
;
|
||||
@@ -1210,13 +1210,13 @@ new_variable:
|
||||
;
|
||||
|
||||
member_name:
|
||||
identifier { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
identifier { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| '{' expr '}' { $$ = $2; }
|
||||
| simple_variable { $$ = $1 }
|
||||
;
|
||||
|
||||
property_name:
|
||||
T_STRING { $$ = node.NewIdentifier($1).SetPosition(NewTokenPosition($1)) }
|
||||
T_STRING { $$ = node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1)) }
|
||||
| '{' expr '}' { $$ = $2; }
|
||||
| simple_variable { $$ = $1 }
|
||||
;
|
||||
@@ -1272,25 +1272,25 @@ encaps_list:
|
||||
;
|
||||
|
||||
encaps_var:
|
||||
T_VARIABLE { $$ = expr.NewVariable(node.NewIdentifier($1).SetPosition(NewTokenPosition($1))).SetPosition(NewTokenPosition($1)) }
|
||||
T_VARIABLE { $$ = expr.NewVariable(node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))).SetPosition(NewTokenPosition($1)) }
|
||||
| T_VARIABLE '[' encaps_var_offset ']'
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = expr.NewArrayDimFetch(variable, $3).SetPosition(NewTokensPosition($1, $4))
|
||||
}
|
||||
| T_VARIABLE T_OBJECT_OPERATOR T_STRING
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
$$ = expr.NewPropertyFetch(variable, node.NewIdentifier($3).SetPosition(NewTokenPosition($3))).
|
||||
$$ = expr.NewPropertyFetch(variable, node.NewIdentifier($3.Value).SetPosition(NewTokenPosition($3))).
|
||||
SetPosition(NewTokensPosition($1, $3))
|
||||
}
|
||||
| T_DOLLAR_OPEN_CURLY_BRACES expr '}' { $$ = expr.NewVariable($2).SetPosition(NewTokensPosition($1, $3)) }
|
||||
| T_DOLLAR_OPEN_CURLY_BRACES T_STRING_VARNAME '}' { $$ = expr.NewVariable(node.NewIdentifier($2).SetPosition(NewTokenPosition($2))).SetPosition(NewTokensPosition($1, $3)) }
|
||||
| T_DOLLAR_OPEN_CURLY_BRACES T_STRING_VARNAME '}' { $$ = expr.NewVariable(node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))).SetPosition(NewTokensPosition($1, $3)) }
|
||||
| T_DOLLAR_OPEN_CURLY_BRACES T_STRING_VARNAME '[' expr ']' '}'
|
||||
{
|
||||
identifier := node.NewIdentifier($2).SetPosition(NewTokenPosition($2))
|
||||
identifier := node.NewIdentifier($2.Value).SetPosition(NewTokenPosition($2))
|
||||
variable := expr.NewVariable(identifier).SetPosition(NewTokenPosition($2))
|
||||
$$ = expr.NewArrayDimFetch(variable, $4).SetPosition(NewTokensPosition($1, $6))
|
||||
}
|
||||
@@ -1320,7 +1320,7 @@ encaps_var_offset:
|
||||
}
|
||||
| T_VARIABLE
|
||||
{
|
||||
identifier := node.NewIdentifier($1).SetPosition(NewTokenPosition($1))
|
||||
identifier := node.NewIdentifier($1.Value).SetPosition(NewTokenPosition($1))
|
||||
$$ = expr.NewVariable(identifier).SetPosition(NewTokenPosition($1))
|
||||
}
|
||||
;
|
||||
|
||||
Reference in New Issue
Block a user