diff --git a/Makefile b/Makefile index f579364..4b0e80a 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ PHPFILE=example.php -all: ./parser/parser.go ./parser/scanner.go +all: ./parser/php7.go ./parser/scanner.go rm -f y.output gofmt -l -s -w *.go go build @@ -14,5 +14,5 @@ test: all ./parser/scanner.go: ./parser/scanner.l golex -o $@ $< -./parser/parser.go: ./parser/parser.y +./parser/php7.go: ./parser/php7.y goyacc -o $@ $< diff --git a/README.md b/README.md index e136558..ebbcfd2 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,7 @@ import ( func main() { src := bytes.NewBufferString(` %s\n", path) src, _ := os.Open(string(path)) - nodes, comments, positions := parser.Parse(src, path) + nodes, comments, positions := parser.ParsePhp7(src, path) visitor := Dumper{ Indent: " | ", diff --git a/parser/parser.go b/parser/php7.go similarity index 92% rename from parser/parser.go rename to parser/php7.go index d48e701..fe97e6d 100644 --- a/parser/parser.go +++ b/parser/php7.go @@ -1,14 +1,10 @@ -//line parser/parser.y:2 +//line parser/php7.y:2 package parser import __yyfmt__ "fmt" -//line parser/parser.y:2 +//line parser/php7.y:2 import ( - "io" - "strconv" - "strings" - "github.com/z7zmey/php-parser/comment" "github.com/z7zmey/php-parser/node" "github.com/z7zmey/php-parser/node/expr" @@ -20,6 +16,9 @@ import ( "github.com/z7zmey/php-parser/node/stmt" "github.com/z7zmey/php-parser/position" "github.com/z7zmey/php-parser/token" + "io" + "strconv" + "strings" ) var rootnode node.Node @@ -27,7 +26,7 @@ var comments comment.Comments var positions position.Positions var positionBuilder position.Builder -func Parse(src io.Reader, fName string) (node.Node, comment.Comments, position.Positions) { +func ParsePhp7(src io.Reader, fName string) (node.Node, comment.Comments, position.Positions) { yyDebug = 0 yyErrorVerbose = true rootnode = stmt.NewStmtList([]node.Node{}) //reset @@ -63,7 +62,7 @@ type boolWithToken struct { token *token.Token } -//line parser/parser.y:64 +//line parser/php7.y:64 type yySymType struct { yys int node node.Node @@ -387,7 +386,7 @@ const yyEofCode = 1 const yyErrCode = 2 const yyInitialStackSize = 16 -//line parser/parser.y:2627 +//line parser/php7.y:2627 //line yacctab:1 var yyExca = [...]int{ @@ -2096,482 +2095,482 @@ yydefault: case 1: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:294 + //line parser/php7.y:294 { rootnode = stmt.NewStmtList(yyDollar[1].list) positions.AddPosition(rootnode, positionBuilder.NewNodeListPosition(yyDollar[1].list)) } case 2: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 3: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 4: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 5: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 6: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 7: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 8: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 9: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:301 + //line parser/php7.y:301 { yyVAL.token = yyDollar[1].token } case 10: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 11: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 12: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 13: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 14: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 15: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 16: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 17: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 18: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 19: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 20: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 21: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:302 + //line parser/php7.y:302 { yyVAL.token = yyDollar[1].token } case 22: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 23: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 24: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 25: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 26: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 27: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 28: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 29: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 30: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 31: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:303 + //line parser/php7.y:303 { yyVAL.token = yyDollar[1].token } case 32: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 33: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 34: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 35: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 36: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 37: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 38: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 39: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 40: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 41: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:304 + //line parser/php7.y:304 { yyVAL.token = yyDollar[1].token } case 42: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 43: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 44: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 45: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 46: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 47: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 48: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 49: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 50: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 51: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 52: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:305 + //line parser/php7.y:305 { yyVAL.token = yyDollar[1].token } case 53: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 54: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 55: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 56: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 57: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 58: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 59: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 60: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:306 + //line parser/php7.y:306 { yyVAL.token = yyDollar[1].token } case 61: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 62: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 63: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 64: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 65: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 66: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 67: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 68: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:307 + //line parser/php7.y:307 { yyVAL.token = yyDollar[1].token } case 69: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:311 + //line parser/php7.y:311 { yyVAL.token = yyDollar[1].token } case 70: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:312 + //line parser/php7.y:312 { yyVAL.token = yyDollar[1].token } case 71: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:312 + //line parser/php7.y:312 { yyVAL.token = yyDollar[1].token } case 72: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:312 + //line parser/php7.y:312 { yyVAL.token = yyDollar[1].token } case 73: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:312 + //line parser/php7.y:312 { yyVAL.token = yyDollar[1].token } case 74: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:312 + //line parser/php7.y:312 { yyVAL.token = yyDollar[1].token } case 75: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:312 + //line parser/php7.y:312 { yyVAL.token = yyDollar[1].token } case 76: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:316 + //line parser/php7.y:316 { yyVAL.token = yyDollar[1].token } case 77: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:317 + //line parser/php7.y:317 { yyVAL.token = yyDollar[1].token } case 78: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:321 + //line parser/php7.y:321 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 79: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:322 + //line parser/php7.y:322 { yyVAL.list = []node.Node{} } case 80: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:327 + //line parser/php7.y:327 { namePart := name.NewNamePart(yyDollar[1].token.Value) positions.AddPosition(namePart, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -2580,7 +2579,7 @@ yydefault: } case 81: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:334 + //line parser/php7.y:334 { namePart := name.NewNamePart(yyDollar[3].token.Value) positions.AddPosition(namePart, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -2589,7 +2588,7 @@ yydefault: } case 82: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:344 + //line parser/php7.y:344 { yyVAL.node = name.NewName(yyDollar[1].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -2597,7 +2596,7 @@ yydefault: } case 83: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:350 + //line parser/php7.y:350 { yyVAL.node = name.NewRelative(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[3].list)) @@ -2605,7 +2604,7 @@ yydefault: } case 84: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:356 + //line parser/php7.y:356 { yyVAL.node = name.NewFullyQualified(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodeListPosition(yyDollar[1].token, yyDollar[2].list)) @@ -2613,43 +2612,43 @@ yydefault: } case 85: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:364 + //line parser/php7.y:364 { yyVAL.node = yyDollar[1].node } case 86: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:365 + //line parser/php7.y:365 { yyVAL.node = yyDollar[1].node } case 87: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:366 + //line parser/php7.y:366 { yyVAL.node = yyDollar[1].node } case 88: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:367 + //line parser/php7.y:367 { yyVAL.node = yyDollar[1].node } case 89: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:368 + //line parser/php7.y:368 { yyVAL.node = yyDollar[1].node } case 90: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:369 + //line parser/php7.y:369 { yyVAL.node = stmt.NewHaltCompiler() } case 91: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:371 + //line parser/php7.y:371 { name := name.NewName(yyDollar[2].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[2].list)) @@ -2661,7 +2660,7 @@ yydefault: } case 92: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:381 + //line parser/php7.y:381 { name := name.NewName(yyDollar[2].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[2].list)) @@ -2673,7 +2672,7 @@ yydefault: } case 93: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:391 + //line parser/php7.y:391 { yyVAL.node = stmt.NewNamespace(nil, yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -2681,19 +2680,19 @@ yydefault: } case 94: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:396 + //line parser/php7.y:396 { yyVAL.node = yyDollar[2].node } case 95: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:397 + //line parser/php7.y:397 { yyVAL.node = yyDollar[3].node.(*stmt.GroupUse).SetUseType(yyDollar[2].node) } case 96: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:399 + //line parser/php7.y:399 { yyVAL.node = stmt.NewUseList(nil, yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2701,13 +2700,13 @@ yydefault: } case 97: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:404 + //line parser/php7.y:404 { yyVAL.node = stmt.NewUseList(yyDollar[2].node, yyDollar[3].list) } case 98: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:406 + //line parser/php7.y:406 { yyVAL.node = stmt.NewConstList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2715,7 +2714,7 @@ yydefault: } case 99: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:415 + //line parser/php7.y:415 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -2723,7 +2722,7 @@ yydefault: } case 100: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:421 + //line parser/php7.y:421 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -2731,7 +2730,7 @@ yydefault: } case 101: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:430 + //line parser/php7.y:430 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -2743,7 +2742,7 @@ yydefault: } case 102: yyDollar = yyS[yypt-7 : yypt+1] - //line parser/parser.y:440 + //line parser/php7.y:440 { name := name.NewName(yyDollar[2].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[2].list)) @@ -2755,7 +2754,7 @@ yydefault: } case 103: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:453 + //line parser/php7.y:453 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -2767,7 +2766,7 @@ yydefault: } case 104: yyDollar = yyS[yypt-7 : yypt+1] - //line parser/parser.y:463 + //line parser/php7.y:463 { name := name.NewName(yyDollar[2].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[2].list)) @@ -2779,55 +2778,55 @@ yydefault: } case 107: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:481 + //line parser/php7.y:481 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 108: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:482 + //line parser/php7.y:482 { yyVAL.list = []node.Node{yyDollar[1].node} } case 109: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:487 + //line parser/php7.y:487 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 110: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:488 + //line parser/php7.y:488 { yyVAL.list = []node.Node{yyDollar[1].node} } case 111: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:492 + //line parser/php7.y:492 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 112: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:493 + //line parser/php7.y:493 { yyVAL.list = []node.Node{yyDollar[1].node} } case 113: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:497 + //line parser/php7.y:497 { yyVAL.node = yyDollar[1].node } case 114: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:498 + //line parser/php7.y:498 { yyVAL.node = yyDollar[2].node.(*stmt.Use).SetUseType(yyDollar[1].node) } case 115: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:503 + //line parser/php7.y:503 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -2839,7 +2838,7 @@ yydefault: } case 116: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:513 + //line parser/php7.y:513 { name := name.NewName(yyDollar[1].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[1].list)) @@ -2854,73 +2853,73 @@ yydefault: } case 117: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:528 + //line parser/php7.y:528 { yyVAL.node = yyDollar[1].node } case 118: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:529 + //line parser/php7.y:529 { yyVAL.node = yyDollar[2].node } case 119: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:533 + //line parser/php7.y:533 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 120: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:534 + //line parser/php7.y:534 { yyVAL.list = []node.Node{yyDollar[1].node} } case 121: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:538 + //line parser/php7.y:538 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 122: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:539 + //line parser/php7.y:539 { yyVAL.list = []node.Node{} } case 123: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:543 + //line parser/php7.y:543 { yyVAL.node = yyDollar[1].node } case 124: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:544 + //line parser/php7.y:544 { yyVAL.node = yyDollar[1].node } case 125: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:545 + //line parser/php7.y:545 { yyVAL.node = yyDollar[1].node } case 126: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:546 + //line parser/php7.y:546 { yyVAL.node = yyDollar[1].node } case 127: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:547 + //line parser/php7.y:547 { yyVAL.node = yyDollar[1].node } case 128: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:549 + //line parser/php7.y:549 { yyVAL.node = stmt.NewHaltCompiler() positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -2928,7 +2927,7 @@ yydefault: } case 129: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:557 + //line parser/php7.y:557 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2936,19 +2935,19 @@ yydefault: } case 130: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:562 + //line parser/php7.y:562 { yyVAL.node = yyDollar[1].node } case 131: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:563 + //line parser/php7.y:563 { yyVAL.node = yyDollar[1].node } case 132: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:565 + //line parser/php7.y:565 { yyVAL.node = stmt.NewWhile(yyDollar[1].token, yyDollar[3].node, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[5].node)) @@ -2956,7 +2955,7 @@ yydefault: } case 133: yyDollar = yyS[yypt-7 : yypt+1] - //line parser/parser.y:571 + //line parser/php7.y:571 { yyVAL.node = stmt.NewDo(yyDollar[2].node, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[7].token)) @@ -2964,7 +2963,7 @@ yydefault: } case 134: yyDollar = yyS[yypt-9 : yypt+1] - //line parser/parser.y:577 + //line parser/php7.y:577 { yyVAL.node = stmt.NewFor(yyDollar[3].list, yyDollar[5].list, yyDollar[7].list, yyDollar[9].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[9].node)) @@ -2972,7 +2971,7 @@ yydefault: } case 135: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:583 + //line parser/php7.y:583 { yyVAL.node = stmt.NewSwitch(yyDollar[1].token, yyDollar[3].node, yyDollar[5].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[5].nodesWithEndToken.endToken)) @@ -2980,7 +2979,7 @@ yydefault: } case 136: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:589 + //line parser/php7.y:589 { yyVAL.node = stmt.NewBreak(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2988,7 +2987,7 @@ yydefault: } case 137: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:595 + //line parser/php7.y:595 { yyVAL.node = stmt.NewContinue(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -2996,7 +2995,7 @@ yydefault: } case 138: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:601 + //line parser/php7.y:601 { yyVAL.node = stmt.NewReturn(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3004,7 +3003,7 @@ yydefault: } case 139: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:607 + //line parser/php7.y:607 { yyVAL.node = stmt.NewGlobal(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3012,7 +3011,7 @@ yydefault: } case 140: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:613 + //line parser/php7.y:613 { yyVAL.node = stmt.NewStatic(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3020,7 +3019,7 @@ yydefault: } case 141: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:619 + //line parser/php7.y:619 { yyVAL.node = stmt.NewEcho(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3028,7 +3027,7 @@ yydefault: } case 142: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:625 + //line parser/php7.y:625 { yyVAL.node = stmt.NewInlineHtml(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3036,7 +3035,7 @@ yydefault: } case 143: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:631 + //line parser/php7.y:631 { yyVAL.node = stmt.NewExpression(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -3044,7 +3043,7 @@ yydefault: } case 144: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:637 + //line parser/php7.y:637 { yyVAL.node = stmt.NewUnset(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[6].token)) @@ -3052,7 +3051,7 @@ yydefault: } case 145: yyDollar = yyS[yypt-7 : yypt+1] - //line parser/parser.y:643 + //line parser/php7.y:643 { yyVAL.node = stmt.NewForeach(yyDollar[3].node, nil, yyDollar[5].foreachVariable.node, yyDollar[7].node, yyDollar[5].foreachVariable.byRef) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[7].node)) @@ -3060,7 +3059,7 @@ yydefault: } case 146: yyDollar = yyS[yypt-9 : yypt+1] - //line parser/parser.y:649 + //line parser/php7.y:649 { yyVAL.node = stmt.NewForeach(yyDollar[3].node, yyDollar[5].node, yyDollar[7].foreachVariable.node, yyDollar[9].node, yyDollar[7].foreachVariable.byRef) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[9].node)) @@ -3068,7 +3067,7 @@ yydefault: } case 147: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:655 + //line parser/php7.y:655 { yyVAL.node = stmt.NewDeclare(yyDollar[3].list, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[5].node)) @@ -3076,7 +3075,7 @@ yydefault: } case 148: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:661 + //line parser/php7.y:661 { yyVAL.node = stmt.NewNop() positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3084,7 +3083,7 @@ yydefault: } case 149: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:667 + //line parser/php7.y:667 { if yyDollar[6].node == nil { yyVAL.node = stmt.NewTry(yyDollar[3].list, yyDollar[5].list, yyDollar[6].node) @@ -3098,7 +3097,7 @@ yydefault: } case 150: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:679 + //line parser/php7.y:679 { yyVAL.node = stmt.NewThrow(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3106,7 +3105,7 @@ yydefault: } case 151: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:685 + //line parser/php7.y:685 { label := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(label, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3118,7 +3117,7 @@ yydefault: } case 152: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:695 + //line parser/php7.y:695 { label := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(label, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3130,13 +3129,13 @@ yydefault: } case 153: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:706 + //line parser/php7.y:706 { yyVAL.list = []node.Node{} } case 154: yyDollar = yyS[yypt-9 : yypt+1] - //line parser/parser.y:708 + //line parser/php7.y:708 { identifier := node.NewIdentifier(yyDollar[5].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[5].token)) @@ -3152,25 +3151,25 @@ yydefault: } case 155: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:723 + //line parser/php7.y:723 { yyVAL.list = []node.Node{yyDollar[1].node} } case 156: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:724 + //line parser/php7.y:724 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 157: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:728 + //line parser/php7.y:728 { yyVAL.node = nil } case 158: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:730 + //line parser/php7.y:730 { yyVAL.node = stmt.NewFinally(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3178,25 +3177,25 @@ yydefault: } case 159: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:738 + //line parser/php7.y:738 { yyVAL.list = []node.Node{yyDollar[1].node} } case 160: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:739 + //line parser/php7.y:739 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 161: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:743 + //line parser/php7.y:743 { yyVAL.node = yyDollar[1].node } case 162: yyDollar = yyS[yypt-11 : yypt+1] - //line parser/parser.y:748 + //line parser/php7.y:748 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3208,31 +3207,31 @@ yydefault: } case 163: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:760 + //line parser/php7.y:760 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 164: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:761 + //line parser/php7.y:761 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 165: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:765 + //line parser/php7.y:765 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 166: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:766 + //line parser/php7.y:766 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 167: yyDollar = yyS[yypt-9 : yypt+1] - //line parser/parser.y:771 + //line parser/php7.y:771 { name := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3244,7 +3243,7 @@ yydefault: } case 168: yyDollar = yyS[yypt-8 : yypt+1] - //line parser/parser.y:781 + //line parser/php7.y:781 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3256,19 +3255,19 @@ yydefault: } case 169: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:793 + //line parser/php7.y:793 { yyVAL.list = []node.Node{yyDollar[1].node} } case 170: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:794 + //line parser/php7.y:794 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 171: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:799 + //line parser/php7.y:799 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3276,7 +3275,7 @@ yydefault: } case 172: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:805 + //line parser/php7.y:805 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3284,7 +3283,7 @@ yydefault: } case 173: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:814 + //line parser/php7.y:814 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3296,7 +3295,7 @@ yydefault: } case 174: yyDollar = yyS[yypt-7 : yypt+1] - //line parser/parser.y:827 + //line parser/php7.y:827 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -3308,55 +3307,55 @@ yydefault: } case 175: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:839 + //line parser/php7.y:839 { yyVAL.node = nil } case 176: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:840 + //line parser/php7.y:840 { yyVAL.node = yyDollar[2].node } case 177: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:844 + //line parser/php7.y:844 { yyVAL.list = nil } case 178: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:845 + //line parser/php7.y:845 { yyVAL.list = yyDollar[2].list } case 179: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:849 + //line parser/php7.y:849 { yyVAL.list = nil } case 180: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:850 + //line parser/php7.y:850 { yyVAL.list = yyDollar[2].list } case 181: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:854 + //line parser/php7.y:854 { yyVAL.foreachVariable = foreachVariable{yyDollar[1].node, false} } case 182: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:855 + //line parser/php7.y:855 { yyVAL.foreachVariable = foreachVariable{yyDollar[2].node, true} } case 183: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:857 + //line parser/php7.y:857 { list := expr.NewList(yyDollar[3].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3365,7 +3364,7 @@ yydefault: } case 184: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:864 + //line parser/php7.y:864 { list := expr.NewShortList(yyDollar[2].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -3374,13 +3373,13 @@ yydefault: } case 185: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:873 + //line parser/php7.y:873 { yyVAL.node = yyDollar[1].node } case 186: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:875 + //line parser/php7.y:875 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3388,13 +3387,13 @@ yydefault: } case 187: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:883 + //line parser/php7.y:883 { yyVAL.node = yyDollar[1].node } case 188: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:885 + //line parser/php7.y:885 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3402,13 +3401,13 @@ yydefault: } case 189: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:893 + //line parser/php7.y:893 { yyVAL.node = yyDollar[1].node } case 190: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:895 + //line parser/php7.y:895 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3416,37 +3415,37 @@ yydefault: } case 191: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:903 + //line parser/php7.y:903 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 192: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:904 + //line parser/php7.y:904 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[3].list, yyDollar[4].token} } case 193: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:905 + //line parser/php7.y:905 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[4].token} } case 194: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:906 + //line parser/php7.y:906 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[3].list, yyDollar[5].token} } case 195: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:910 + //line parser/php7.y:910 { yyVAL.list = []node.Node{} } case 196: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:912 + //line parser/php7.y:912 { _case := stmt.NewCase(yyDollar[3].node, yyDollar[5].list) positions.AddPosition(_case, positionBuilder.NewTokenNodeListPosition(yyDollar[2].token, yyDollar[5].list)) @@ -3455,7 +3454,7 @@ yydefault: } case 197: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:919 + //line parser/php7.y:919 { _default := stmt.NewDefault(yyDollar[4].list) positions.AddPosition(_default, positionBuilder.NewTokenNodeListPosition(yyDollar[2].token, yyDollar[4].list)) @@ -3464,13 +3463,13 @@ yydefault: } case 200: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:933 + //line parser/php7.y:933 { yyVAL.node = yyDollar[1].node } case 201: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:935 + //line parser/php7.y:935 { yyVAL.node = stmt.NewStmtList(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -3478,7 +3477,7 @@ yydefault: } case 202: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:944 + //line parser/php7.y:944 { yyVAL.node = stmt.NewIf(yyDollar[3].node, yyDollar[5].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[5].node)) @@ -3486,7 +3485,7 @@ yydefault: } case 203: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:950 + //line parser/php7.y:950 { _elseIf := stmt.NewElseIf(yyDollar[4].node, yyDollar[6].node) positions.AddPosition(_elseIf, positionBuilder.NewTokenNodePosition(yyDollar[2].token, yyDollar[6].node)) @@ -3497,13 +3496,13 @@ yydefault: } case 204: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:961 + //line parser/php7.y:961 { yyVAL.node = yyDollar[1].node } case 205: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:963 + //line parser/php7.y:963 { _else := stmt.NewElse(yyDollar[3].node) positions.AddPosition(_else, positionBuilder.NewTokenNodePosition(yyDollar[2].token, yyDollar[3].node)) @@ -3514,7 +3513,7 @@ yydefault: } case 206: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:975 + //line parser/php7.y:975 { stmts := stmt.NewStmtList(yyDollar[6].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[6].list)) @@ -3526,7 +3525,7 @@ yydefault: } case 207: yyDollar = yyS[yypt-7 : yypt+1] - //line parser/parser.y:985 + //line parser/php7.y:985 { stmts := stmt.NewStmtList(yyDollar[7].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[7].list)) @@ -3539,14 +3538,14 @@ yydefault: } case 208: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:999 + //line parser/php7.y:999 { 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 parser/parser.y:1004 + //line parser/php7.y:1004 { stmts := stmt.NewStmtList(yyDollar[4].list) positions.AddPosition(stmts, positionBuilder.NewNodeListPosition(yyDollar[4].list)) @@ -3560,31 +3559,31 @@ yydefault: } case 210: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1018 + //line parser/php7.y:1018 { yyVAL.list = yyDollar[1].list } case 211: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1019 + //line parser/php7.y:1019 { yyVAL.list = nil } case 212: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1023 + //line parser/php7.y:1023 { yyVAL.list = []node.Node{yyDollar[1].node} } case 213: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1024 + //line parser/php7.y:1024 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 214: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1029 + //line parser/php7.y:1029 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3614,7 +3613,7 @@ yydefault: } case 215: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:1057 + //line parser/php7.y:1057 { identifier := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3644,25 +3643,25 @@ yydefault: } case 216: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1087 + //line parser/php7.y:1087 { yyVAL.node = nil } case 217: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1088 + //line parser/php7.y:1088 { yyVAL.node = yyDollar[1].node } case 218: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1092 + //line parser/php7.y:1092 { yyVAL.node = yyDollar[1].node } case 219: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1094 + //line parser/php7.y:1094 { yyVAL.node = node.NewNullable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3670,7 +3669,7 @@ yydefault: } case 220: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1103 + //line parser/php7.y:1103 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3678,7 +3677,7 @@ yydefault: } case 221: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1109 + //line parser/php7.y:1109 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3686,49 +3685,49 @@ yydefault: } case 222: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1114 + //line parser/php7.y:1114 { yyVAL.node = yyDollar[1].node } case 223: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1118 + //line parser/php7.y:1118 { yyVAL.node = nil } case 224: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1119 + //line parser/php7.y:1119 { yyVAL.node = yyDollar[2].node } case 225: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1123 + //line parser/php7.y:1123 { yyVAL.nodesWithEndToken = &nodesWithEndToken{[]node.Node{}, yyDollar[2].token} } case 226: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1124 + //line parser/php7.y:1124 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[4].token} } case 227: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1128 + //line parser/php7.y:1128 { yyVAL.list = []node.Node{yyDollar[1].node} } case 228: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1129 + //line parser/php7.y:1129 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 229: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1134 + //line parser/php7.y:1134 { yyVAL.node = node.NewArgument(yyDollar[1].node, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -3736,7 +3735,7 @@ yydefault: } case 230: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1140 + //line parser/php7.y:1140 { yyVAL.node = node.NewArgument(yyDollar[2].node, true) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -3744,37 +3743,37 @@ yydefault: } case 231: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1148 + //line parser/php7.y:1148 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 232: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1149 + //line parser/php7.y:1149 { yyVAL.list = []node.Node{yyDollar[1].node} } case 233: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1153 + //line parser/php7.y:1153 { yyVAL.node = yyDollar[1].node } case 234: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1157 + //line parser/php7.y:1157 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 235: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1158 + //line parser/php7.y:1158 { yyVAL.list = []node.Node{yyDollar[1].node} } case 236: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1163 + //line parser/php7.y:1163 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3789,7 +3788,7 @@ yydefault: } case 237: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1176 + //line parser/php7.y:1176 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3804,19 +3803,19 @@ yydefault: } case 238: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1191 + //line parser/php7.y:1191 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 239: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1192 + //line parser/php7.y:1192 { yyVAL.list = []node.Node{} } case 240: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1197 + //line parser/php7.y:1197 { yyVAL.node = stmt.NewPropertyList(yyDollar[1].list, yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeListTokenPosition(yyDollar[1].list, yyDollar[3].token)) @@ -3824,7 +3823,7 @@ yydefault: } case 241: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1203 + //line parser/php7.y:1203 { 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)) @@ -3832,7 +3831,7 @@ yydefault: } case 242: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1209 + //line parser/php7.y:1209 { yyVAL.node = stmt.NewTraitUse(yyDollar[2].list, yyDollar[3].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].nodesWithEndToken.endToken)) @@ -3840,7 +3839,7 @@ yydefault: } case 243: yyDollar = yyS[yypt-10 : yypt+1] - //line parser/parser.y:1215 + //line parser/php7.y:1215 { name := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3852,61 +3851,61 @@ yydefault: } case 244: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1227 + //line parser/php7.y:1227 { yyVAL.list = []node.Node{yyDollar[1].node} } case 245: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1228 + //line parser/php7.y:1228 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 246: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1232 + //line parser/php7.y:1232 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[1].token} } case 247: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1233 + //line parser/php7.y:1233 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[2].token} } case 248: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1234 + //line parser/php7.y:1234 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 249: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1238 + //line parser/php7.y:1238 { yyVAL.list = []node.Node{yyDollar[1].node} } case 250: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1239 + //line parser/php7.y:1239 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 251: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1243 + //line parser/php7.y:1243 { yyVAL.node = yyDollar[1].node } case 252: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1244 + //line parser/php7.y:1244 { yyVAL.node = yyDollar[1].node } case 253: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1249 + //line parser/php7.y:1249 { name := name.NewName(yyDollar[3].list) positions.AddPosition(name, positionBuilder.NewNodeListPosition(yyDollar[3].list)) @@ -3918,7 +3917,7 @@ yydefault: } case 254: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1262 + //line parser/php7.y:1262 { alias := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3930,7 +3929,7 @@ yydefault: } case 255: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1272 + //line parser/php7.y:1272 { alias := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3942,7 +3941,7 @@ yydefault: } case 256: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1282 + //line parser/php7.y:1282 { alias := node.NewIdentifier(yyDollar[4].token.Value) positions.AddPosition(alias, positionBuilder.NewTokenPosition(yyDollar[4].token)) @@ -3954,7 +3953,7 @@ yydefault: } case 257: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1292 + //line parser/php7.y:1292 { yyVAL.node = stmt.NewTraitUseAlias(yyDollar[1].node, yyDollar[3].node, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -3962,7 +3961,7 @@ yydefault: } case 258: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1301 + //line parser/php7.y:1301 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -3974,13 +3973,13 @@ yydefault: } case 259: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1310 + //line parser/php7.y:1310 { yyVAL.node = yyDollar[1].node } case 260: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1315 + //line parser/php7.y:1315 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -3992,25 +3991,25 @@ yydefault: } case 261: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1327 + //line parser/php7.y:1327 { yyVAL.nodesWithEndToken = &nodesWithEndToken{nil, yyDollar[1].token} } case 262: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1328 + //line parser/php7.y:1328 { yyVAL.nodesWithEndToken = &nodesWithEndToken{yyDollar[2].list, yyDollar[3].token} } case 263: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1332 + //line parser/php7.y:1332 { yyVAL.list = yyDollar[1].list } case 264: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1334 + //line parser/php7.y:1334 { modifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(modifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4019,31 +4018,31 @@ yydefault: } case 265: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1343 + //line parser/php7.y:1343 { yyVAL.list = nil } case 266: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1344 + //line parser/php7.y:1344 { yyVAL.list = yyDollar[1].list } case 267: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1348 + //line parser/php7.y:1348 { yyVAL.list = []node.Node{yyDollar[1].node} } case 268: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1349 + //line parser/php7.y:1349 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 269: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1354 + //line parser/php7.y:1354 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4051,7 +4050,7 @@ yydefault: } case 270: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1360 + //line parser/php7.y:1360 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4059,7 +4058,7 @@ yydefault: } case 271: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1366 + //line parser/php7.y:1366 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4067,7 +4066,7 @@ yydefault: } case 272: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1372 + //line parser/php7.y:1372 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4075,7 +4074,7 @@ yydefault: } case 273: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1378 + //line parser/php7.y:1378 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4083,7 +4082,7 @@ yydefault: } case 274: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1384 + //line parser/php7.y:1384 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4091,19 +4090,19 @@ yydefault: } case 275: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1392 + //line parser/php7.y:1392 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 276: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1393 + //line parser/php7.y:1393 { yyVAL.list = []node.Node{yyDollar[1].node} } case 277: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1398 + //line parser/php7.y:1398 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4118,7 +4117,7 @@ yydefault: } case 278: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1411 + //line parser/php7.y:1411 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4133,19 +4132,19 @@ yydefault: } case 279: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1426 + //line parser/php7.y:1426 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 280: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1427 + //line parser/php7.y:1427 { yyVAL.list = []node.Node{yyDollar[1].node} } case 281: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1432 + //line parser/php7.y:1432 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4157,7 +4156,7 @@ yydefault: } case 282: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1445 + //line parser/php7.y:1445 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4169,49 +4168,49 @@ yydefault: } case 283: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1457 + //line parser/php7.y:1457 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 284: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1458 + //line parser/php7.y:1458 { yyVAL.list = []node.Node{yyDollar[1].node} } case 285: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1462 + //line parser/php7.y:1462 { yyVAL.node = yyDollar[1].node } case 286: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1466 + //line parser/php7.y:1466 { yyVAL.list = nil } case 287: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1467 + //line parser/php7.y:1467 { yyVAL.list = yyDollar[1].list } case 288: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1470 + //line parser/php7.y:1470 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 289: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1471 + //line parser/php7.y:1471 { yyVAL.list = []node.Node{yyDollar[1].node} } case 290: yyDollar = yyS[yypt-8 : yypt+1] - //line parser/parser.y:1476 + //line parser/php7.y:1476 { 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) @@ -4225,7 +4224,7 @@ yydefault: } case 291: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1491 + //line parser/php7.y:1491 { if yyDollar[3].nodesWithEndToken != nil { yyVAL.node = expr.NewNew(yyDollar[2].node, yyDollar[3].nodesWithEndToken.nodes) @@ -4239,13 +4238,13 @@ yydefault: } case 292: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1502 + //line parser/php7.y:1502 { yyVAL.node = expr.NewNew(yyDollar[2].node, nil) } case 293: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:1507 + //line parser/php7.y:1507 { list := expr.NewList(yyDollar[3].list) positions.AddPosition(list, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -4257,7 +4256,7 @@ yydefault: } case 294: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:1517 + //line parser/php7.y:1517 { shortList := expr.NewShortList(yyDollar[2].list) positions.AddPosition(shortList, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4269,7 +4268,7 @@ yydefault: } case 295: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1527 + //line parser/php7.y:1527 { yyVAL.node = assign_op.NewAssign(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4277,7 +4276,7 @@ yydefault: } case 296: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1533 + //line parser/php7.y:1533 { yyVAL.node = assign_op.NewAssignRef(yyDollar[1].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -4285,7 +4284,7 @@ yydefault: } case 297: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1539 + //line parser/php7.y:1539 { yyVAL.node = expr.NewClone(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4293,7 +4292,7 @@ yydefault: } case 298: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1545 + //line parser/php7.y:1545 { yyVAL.node = assign_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4301,7 +4300,7 @@ yydefault: } case 299: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1551 + //line parser/php7.y:1551 { yyVAL.node = assign_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4309,7 +4308,7 @@ yydefault: } case 300: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1557 + //line parser/php7.y:1557 { yyVAL.node = assign_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4317,7 +4316,7 @@ yydefault: } case 301: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1563 + //line parser/php7.y:1563 { yyVAL.node = assign_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4325,7 +4324,7 @@ yydefault: } case 302: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1569 + //line parser/php7.y:1569 { yyVAL.node = assign_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4333,7 +4332,7 @@ yydefault: } case 303: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1575 + //line parser/php7.y:1575 { yyVAL.node = assign_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4341,7 +4340,7 @@ yydefault: } case 304: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1581 + //line parser/php7.y:1581 { yyVAL.node = assign_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4349,7 +4348,7 @@ yydefault: } case 305: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1587 + //line parser/php7.y:1587 { yyVAL.node = assign_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4357,7 +4356,7 @@ yydefault: } case 306: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1593 + //line parser/php7.y:1593 { yyVAL.node = assign_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4365,7 +4364,7 @@ yydefault: } case 307: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1599 + //line parser/php7.y:1599 { yyVAL.node = assign_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4373,7 +4372,7 @@ yydefault: } case 308: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1605 + //line parser/php7.y:1605 { yyVAL.node = assign_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4381,7 +4380,7 @@ yydefault: } case 309: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1611 + //line parser/php7.y:1611 { yyVAL.node = assign_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4389,7 +4388,7 @@ yydefault: } case 310: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1617 + //line parser/php7.y:1617 { yyVAL.node = expr.NewPostInc(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -4397,7 +4396,7 @@ yydefault: } case 311: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1623 + //line parser/php7.y:1623 { yyVAL.node = expr.NewPreInc(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4405,7 +4404,7 @@ yydefault: } case 312: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1629 + //line parser/php7.y:1629 { yyVAL.node = expr.NewPostDec(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].token)) @@ -4413,7 +4412,7 @@ yydefault: } case 313: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1635 + //line parser/php7.y:1635 { yyVAL.node = expr.NewPreDec(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4421,7 +4420,7 @@ yydefault: } case 314: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1641 + //line parser/php7.y:1641 { yyVAL.node = binary_op.NewBooleanOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4429,7 +4428,7 @@ yydefault: } case 315: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1647 + //line parser/php7.y:1647 { yyVAL.node = binary_op.NewBooleanAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4437,7 +4436,7 @@ yydefault: } case 316: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1653 + //line parser/php7.y:1653 { yyVAL.node = binary_op.NewLogicalOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4445,7 +4444,7 @@ yydefault: } case 317: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1659 + //line parser/php7.y:1659 { yyVAL.node = binary_op.NewLogicalAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4453,7 +4452,7 @@ yydefault: } case 318: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1665 + //line parser/php7.y:1665 { yyVAL.node = binary_op.NewLogicalXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4461,7 +4460,7 @@ yydefault: } case 319: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1671 + //line parser/php7.y:1671 { yyVAL.node = binary_op.NewBitwiseOr(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4469,7 +4468,7 @@ yydefault: } case 320: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1677 + //line parser/php7.y:1677 { yyVAL.node = binary_op.NewBitwiseAnd(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4477,7 +4476,7 @@ yydefault: } case 321: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1683 + //line parser/php7.y:1683 { yyVAL.node = binary_op.NewBitwiseXor(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4485,7 +4484,7 @@ yydefault: } case 322: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1689 + //line parser/php7.y:1689 { yyVAL.node = binary_op.NewConcat(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4493,7 +4492,7 @@ yydefault: } case 323: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1695 + //line parser/php7.y:1695 { yyVAL.node = binary_op.NewPlus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4501,7 +4500,7 @@ yydefault: } case 324: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1701 + //line parser/php7.y:1701 { yyVAL.node = binary_op.NewMinus(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4509,7 +4508,7 @@ yydefault: } case 325: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1707 + //line parser/php7.y:1707 { yyVAL.node = binary_op.NewMul(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4517,7 +4516,7 @@ yydefault: } case 326: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1713 + //line parser/php7.y:1713 { yyVAL.node = binary_op.NewPow(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4525,7 +4524,7 @@ yydefault: } case 327: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1719 + //line parser/php7.y:1719 { yyVAL.node = binary_op.NewDiv(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4533,7 +4532,7 @@ yydefault: } case 328: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1725 + //line parser/php7.y:1725 { yyVAL.node = binary_op.NewMod(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4541,7 +4540,7 @@ yydefault: } case 329: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1731 + //line parser/php7.y:1731 { yyVAL.node = binary_op.NewShiftLeft(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4549,7 +4548,7 @@ yydefault: } case 330: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1737 + //line parser/php7.y:1737 { yyVAL.node = binary_op.NewShiftRight(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4557,7 +4556,7 @@ yydefault: } case 331: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1743 + //line parser/php7.y:1743 { yyVAL.node = expr.NewUnaryPlus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4565,7 +4564,7 @@ yydefault: } case 332: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1749 + //line parser/php7.y:1749 { yyVAL.node = expr.NewUnaryMinus(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4573,7 +4572,7 @@ yydefault: } case 333: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1755 + //line parser/php7.y:1755 { yyVAL.node = expr.NewBooleanNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4581,7 +4580,7 @@ yydefault: } case 334: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1761 + //line parser/php7.y:1761 { yyVAL.node = expr.NewBitwiseNot(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4589,7 +4588,7 @@ yydefault: } case 335: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1767 + //line parser/php7.y:1767 { yyVAL.node = binary_op.NewIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4597,7 +4596,7 @@ yydefault: } case 336: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1773 + //line parser/php7.y:1773 { yyVAL.node = binary_op.NewNotIdentical(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4605,7 +4604,7 @@ yydefault: } case 337: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1779 + //line parser/php7.y:1779 { yyVAL.node = binary_op.NewEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4613,7 +4612,7 @@ yydefault: } case 338: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1785 + //line parser/php7.y:1785 { yyVAL.node = binary_op.NewNotEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4621,7 +4620,7 @@ yydefault: } case 339: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1791 + //line parser/php7.y:1791 { yyVAL.node = binary_op.NewSmaller(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4629,7 +4628,7 @@ yydefault: } case 340: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1797 + //line parser/php7.y:1797 { yyVAL.node = binary_op.NewSmallerOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4637,7 +4636,7 @@ yydefault: } case 341: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1803 + //line parser/php7.y:1803 { yyVAL.node = binary_op.NewGreater(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4645,7 +4644,7 @@ yydefault: } case 342: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1809 + //line parser/php7.y:1809 { yyVAL.node = binary_op.NewGreaterOrEqual(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4653,7 +4652,7 @@ yydefault: } case 343: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1815 + //line parser/php7.y:1815 { yyVAL.node = binary_op.NewSpaceship(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4661,7 +4660,7 @@ yydefault: } case 344: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1821 + //line parser/php7.y:1821 { yyVAL.node = expr.NewInstanceOf(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4669,19 +4668,19 @@ yydefault: } case 345: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1826 + //line parser/php7.y:1826 { yyVAL.node = yyDollar[2].node } case 346: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1827 + //line parser/php7.y:1827 { yyVAL.node = yyDollar[1].node } case 347: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:1829 + //line parser/php7.y:1829 { 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)) @@ -4689,7 +4688,7 @@ yydefault: } case 348: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1835 + //line parser/php7.y:1835 { yyVAL.node = expr.NewTernary(yyDollar[1].node, nil, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -4697,7 +4696,7 @@ yydefault: } case 349: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1841 + //line parser/php7.y:1841 { yyVAL.node = binary_op.NewCoalesce(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -4705,13 +4704,13 @@ yydefault: } case 350: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1846 + //line parser/php7.y:1846 { yyVAL.node = yyDollar[1].node } case 351: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1848 + //line parser/php7.y:1848 { yyVAL.node = cast.NewCastInt(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4719,7 +4718,7 @@ yydefault: } case 352: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1854 + //line parser/php7.y:1854 { yyVAL.node = cast.NewCastDouble(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4727,7 +4726,7 @@ yydefault: } case 353: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1860 + //line parser/php7.y:1860 { yyVAL.node = cast.NewCastString(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4735,7 +4734,7 @@ yydefault: } case 354: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1866 + //line parser/php7.y:1866 { yyVAL.node = cast.NewCastArray(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4743,7 +4742,7 @@ yydefault: } case 355: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1872 + //line parser/php7.y:1872 { yyVAL.node = cast.NewCastObject(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4751,7 +4750,7 @@ yydefault: } case 356: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1878 + //line parser/php7.y:1878 { yyVAL.node = cast.NewCastBool(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4759,7 +4758,7 @@ yydefault: } case 357: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1884 + //line parser/php7.y:1884 { yyVAL.node = cast.NewCastUnset(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4767,7 +4766,7 @@ yydefault: } case 358: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1890 + //line parser/php7.y:1890 { yyVAL.node = expr.NewExit(yyDollar[2].node, strings.EqualFold(yyDollar[1].token.Value, "die")) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4775,7 +4774,7 @@ yydefault: } case 359: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1896 + //line parser/php7.y:1896 { yyVAL.node = expr.NewErrorSuppress(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4783,13 +4782,13 @@ yydefault: } case 360: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1901 + //line parser/php7.y:1901 { yyVAL.node = yyDollar[1].node } case 361: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1903 + //line parser/php7.y:1903 { yyVAL.node = expr.NewShellExec(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -4797,7 +4796,7 @@ yydefault: } case 362: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1909 + //line parser/php7.y:1909 { yyVAL.node = expr.NewPrint(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4805,7 +4804,7 @@ yydefault: } case 363: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1915 + //line parser/php7.y:1915 { yyVAL.node = expr.NewYield(nil, nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4813,7 +4812,7 @@ yydefault: } case 364: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1921 + //line parser/php7.y:1921 { yyVAL.node = expr.NewYield(nil, yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4821,7 +4820,7 @@ yydefault: } case 365: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1927 + //line parser/php7.y:1927 { yyVAL.node = expr.NewYield(yyDollar[2].node, yyDollar[4].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[4].node)) @@ -4829,7 +4828,7 @@ yydefault: } case 366: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1933 + //line parser/php7.y:1933 { yyVAL.node = expr.NewYieldFrom(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -4837,7 +4836,7 @@ yydefault: } case 367: yyDollar = yyS[yypt-11 : yypt+1] - //line parser/parser.y:1939 + //line parser/php7.y:1939 { 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)) @@ -4846,7 +4845,7 @@ yydefault: } case 368: yyDollar = yyS[yypt-12 : yypt+1] - //line parser/parser.y:1946 + //line parser/php7.y:1946 { 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)) @@ -4855,50 +4854,50 @@ yydefault: } case 369: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1955 + //line parser/php7.y:1955 { yyVAL.str = yylex.(*lexer).phpDocComment yylex.(*lexer).phpDocComment = "" } case 370: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1959 + //line parser/php7.y:1959 { yyVAL.boolWithToken = boolWithToken{false, nil} } case 371: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1960 + //line parser/php7.y:1960 { yyVAL.boolWithToken = boolWithToken{true, &yyDollar[1].token} } case 372: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:1964 + //line parser/php7.y:1964 { yyVAL.list = []node.Node{} } case 373: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:1965 + //line parser/php7.y:1965 { yyVAL.list = yyDollar[3].list } case 374: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:1969 + //line parser/php7.y:1969 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 375: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1970 + //line parser/php7.y:1970 { yyVAL.list = []node.Node{yyDollar[1].node} } case 376: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:1975 + //line parser/php7.y:1975 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4913,7 +4912,7 @@ yydefault: } case 377: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:1988 + //line parser/php7.y:1988 { identifier := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -4928,7 +4927,7 @@ yydefault: } case 378: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2004 + //line parser/php7.y:2004 { yyVAL.node = expr.NewFunctionCall(yyDollar[1].node, yyDollar[2].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].nodesWithEndToken.endToken)) @@ -4936,7 +4935,7 @@ yydefault: } case 379: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2010 + //line parser/php7.y:2010 { 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)) @@ -4944,7 +4943,7 @@ yydefault: } case 380: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2016 + //line parser/php7.y:2016 { 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)) @@ -4952,7 +4951,7 @@ yydefault: } case 381: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2022 + //line parser/php7.y:2022 { yyVAL.node = expr.NewFunctionCall(yyDollar[1].node, yyDollar[2].nodesWithEndToken.nodes) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[2].nodesWithEndToken.endToken)) @@ -4960,7 +4959,7 @@ yydefault: } case 382: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2031 + //line parser/php7.y:2031 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -4968,67 +4967,67 @@ yydefault: } case 383: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2036 + //line parser/php7.y:2036 { yyVAL.node = yyDollar[1].node } case 384: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2040 + //line parser/php7.y:2040 { yyVAL.node = yyDollar[1].node } case 385: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2041 + //line parser/php7.y:2041 { yyVAL.node = yyDollar[1].node } case 386: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:2045 + //line parser/php7.y:2045 { yyVAL.node = nil } case 387: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2046 + //line parser/php7.y:2046 { yyVAL.node = yyDollar[2].node } case 388: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:2050 + //line parser/php7.y:2050 { yyVAL.list = []node.Node{} } case 389: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2051 + //line parser/php7.y:2051 { yyVAL.list = []node.Node{scalar.NewEncapsedStringPart(yyDollar[1].token.Value)} } case 390: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2052 + //line parser/php7.y:2052 { yyVAL.list = yyDollar[1].list } case 391: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:2056 + //line parser/php7.y:2056 { yyVAL.nodesWithEndToken = nil } case 392: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2057 + //line parser/php7.y:2057 { yyVAL.nodesWithEndToken = yyDollar[1].nodesWithEndToken } case 393: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2062 + //line parser/php7.y:2062 { yyVAL.node = expr.NewArray(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5036,7 +5035,7 @@ yydefault: } case 394: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2068 + //line parser/php7.y:2068 { yyVAL.node = expr.NewShortArray(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5044,7 +5043,7 @@ yydefault: } case 395: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2074 + //line parser/php7.y:2074 { yyVAL.node = scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5052,7 +5051,7 @@ yydefault: } case 396: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2083 + //line parser/php7.y:2083 { yyVAL.node = scalar.NewLnumber(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5060,7 +5059,7 @@ yydefault: } case 397: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2089 + //line parser/php7.y:2089 { yyVAL.node = scalar.NewDnumber(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5068,7 +5067,7 @@ yydefault: } case 398: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2095 + //line parser/php7.y:2095 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5076,7 +5075,7 @@ yydefault: } case 399: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2101 + //line parser/php7.y:2101 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5084,7 +5083,7 @@ yydefault: } case 400: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2107 + //line parser/php7.y:2107 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5092,7 +5091,7 @@ yydefault: } case 401: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2113 + //line parser/php7.y:2113 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5100,7 +5099,7 @@ yydefault: } case 402: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2119 + //line parser/php7.y:2119 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5108,7 +5107,7 @@ yydefault: } case 403: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2125 + //line parser/php7.y:2125 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5116,7 +5115,7 @@ yydefault: } case 404: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2131 + //line parser/php7.y:2131 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5124,7 +5123,7 @@ yydefault: } case 405: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2137 + //line parser/php7.y:2137 { yyVAL.node = scalar.NewMagicConstant(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5132,7 +5131,7 @@ yydefault: } case 406: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2143 + //line parser/php7.y:2143 { yyVAL.node = scalar.NewString(yyDollar[2].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) /* TODO: mark as Heredoc*/ @@ -5140,7 +5139,7 @@ yydefault: } case 407: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2148 + //line parser/php7.y:2148 { yyVAL.node = scalar.NewEncapsed(nil) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[2].token)) @@ -5148,7 +5147,7 @@ yydefault: } case 408: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2154 + //line parser/php7.y:2154 { yyVAL.node = scalar.NewEncapsed(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5156,7 +5155,7 @@ yydefault: } case 409: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2160 + //line parser/php7.y:2160 { yyVAL.node = scalar.NewEncapsed(yyDollar[2].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5164,19 +5163,19 @@ yydefault: } case 410: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2165 + //line parser/php7.y:2165 { yyVAL.node = yyDollar[1].node } case 411: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2166 + //line parser/php7.y:2166 { yyVAL.node = yyDollar[1].node } case 412: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2171 + //line parser/php7.y:2171 { yyVAL.node = expr.NewConstFetch(yyDollar[1].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -5184,7 +5183,7 @@ yydefault: } case 413: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2177 + //line parser/php7.y:2177 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -5196,7 +5195,7 @@ yydefault: } case 414: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2187 + //line parser/php7.y:2187 { target := node.NewIdentifier(yyDollar[3].token.Value) positions.AddPosition(target, positionBuilder.NewTokenPosition(yyDollar[3].token)) @@ -5208,79 +5207,79 @@ yydefault: } case 415: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2199 + //line parser/php7.y:2199 { yyVAL.node = yyDollar[1].node } case 416: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2200 + //line parser/php7.y:2200 { yyVAL.node = yyDollar[1].node } case 417: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:2204 + //line parser/php7.y:2204 { yyVAL.node = nil } case 418: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2205 + //line parser/php7.y:2205 { yyVAL.node = yyDollar[1].node } case 419: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2209 + //line parser/php7.y:2209 { yyVAL.node = yyDollar[1].node } case 420: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2213 + //line parser/php7.y:2213 { yyVAL.node = yyDollar[1].node } case 421: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2214 + //line parser/php7.y:2214 { yyVAL.node = yyDollar[2].node } case 422: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2215 + //line parser/php7.y:2215 { yyVAL.node = yyDollar[1].node } case 423: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2219 + //line parser/php7.y:2219 { yyVAL.node = yyDollar[1].node } case 424: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2220 + //line parser/php7.y:2220 { yyVAL.node = yyDollar[2].node } case 425: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2221 + //line parser/php7.y:2221 { yyVAL.node = yyDollar[1].node } case 426: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2225 + //line parser/php7.y:2225 { yyVAL.node = yyDollar[1].node } case 427: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2227 + //line parser/php7.y:2227 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5288,7 +5287,7 @@ yydefault: } case 428: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2233 + //line parser/php7.y:2233 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5296,7 +5295,7 @@ yydefault: } case 429: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2239 + //line parser/php7.y:2239 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5304,7 +5303,7 @@ yydefault: } case 430: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2245 + //line parser/php7.y:2245 { 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)) @@ -5312,25 +5311,25 @@ yydefault: } case 431: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2250 + //line parser/php7.y:2250 { yyVAL.node = yyDollar[1].node } case 432: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2254 + //line parser/php7.y:2254 { yyVAL.node = yyDollar[1].node } case 433: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2255 + //line parser/php7.y:2255 { yyVAL.node = yyDollar[1].node } case 434: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2257 + //line parser/php7.y:2257 { yyVAL.node = expr.NewPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5338,7 +5337,7 @@ yydefault: } case 435: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2266 + //line parser/php7.y:2266 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5350,7 +5349,7 @@ yydefault: } case 436: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2276 + //line parser/php7.y:2276 { yyVAL.node = expr.NewVariable(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5358,7 +5357,7 @@ yydefault: } case 437: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2282 + //line parser/php7.y:2282 { yyVAL.node = expr.NewVariable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5366,7 +5365,7 @@ yydefault: } case 438: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2291 + //line parser/php7.y:2291 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5374,7 +5373,7 @@ yydefault: } case 439: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2297 + //line parser/php7.y:2297 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5382,13 +5381,13 @@ yydefault: } case 440: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2305 + //line parser/php7.y:2305 { yyVAL.node = yyDollar[1].node } case 441: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2307 + //line parser/php7.y:2307 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5396,7 +5395,7 @@ yydefault: } case 442: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2313 + //line parser/php7.y:2313 { yyVAL.node = expr.NewArrayDimFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodeTokenPosition(yyDollar[1].node, yyDollar[4].token)) @@ -5404,7 +5403,7 @@ yydefault: } case 443: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2319 + //line parser/php7.y:2319 { yyVAL.node = expr.NewPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5412,7 +5411,7 @@ yydefault: } case 444: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2325 + //line parser/php7.y:2325 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5420,7 +5419,7 @@ yydefault: } case 445: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2331 + //line parser/php7.y:2331 { yyVAL.node = expr.NewStaticPropertyFetch(yyDollar[1].node, yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5428,7 +5427,7 @@ yydefault: } case 446: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2340 + //line parser/php7.y:2340 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5436,19 +5435,19 @@ yydefault: } case 447: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2345 + //line parser/php7.y:2345 { yyVAL.node = yyDollar[2].node } case 448: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2346 + //line parser/php7.y:2346 { yyVAL.node = yyDollar[1].node } case 449: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2351 + //line parser/php7.y:2351 { yyVAL.node = node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5456,19 +5455,19 @@ yydefault: } case 450: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2356 + //line parser/php7.y:2356 { yyVAL.node = yyDollar[2].node } case 451: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2357 + //line parser/php7.y:2357 { yyVAL.node = yyDollar[1].node } case 452: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2362 + //line parser/php7.y:2362 { if yyDollar[1].list[len(yyDollar[1].list)-1] == nil { yyVAL.list = yyDollar[1].list[:len(yyDollar[1].list)-1] @@ -5478,31 +5477,31 @@ yydefault: } case 453: yyDollar = yyS[yypt-0 : yypt+1] - //line parser/parser.y:2372 + //line parser/php7.y:2372 { yyVAL.node = nil } case 454: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2373 + //line parser/php7.y:2373 { yyVAL.node = yyDollar[1].node } case 455: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2378 + //line parser/php7.y:2378 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 456: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2379 + //line parser/php7.y:2379 { yyVAL.list = []node.Node{yyDollar[1].node} } case 457: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2384 + //line parser/php7.y:2384 { yyVAL.node = expr.NewArrayItem(yyDollar[1].node, yyDollar[3].node, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[3].node)) @@ -5510,7 +5509,7 @@ yydefault: } case 458: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2390 + //line parser/php7.y:2390 { yyVAL.node = expr.NewArrayItem(nil, yyDollar[1].node, false) positions.AddPosition(yyVAL.node, positionBuilder.NewNodePosition(yyDollar[1].node)) @@ -5518,7 +5517,7 @@ yydefault: } case 459: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2396 + //line parser/php7.y:2396 { yyVAL.node = expr.NewArrayItem(yyDollar[1].node, yyDollar[4].node, true) positions.AddPosition(yyVAL.node, positionBuilder.NewNodesPosition(yyDollar[1].node, yyDollar[4].node)) @@ -5526,7 +5525,7 @@ yydefault: } case 460: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2402 + //line parser/php7.y:2402 { yyVAL.node = expr.NewArrayItem(nil, yyDollar[2].node, true) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5534,7 +5533,7 @@ yydefault: } case 461: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:2408 + //line parser/php7.y:2408 { // TODO: Cannot use list() as standalone expression list := expr.NewList(yyDollar[5].list) @@ -5547,7 +5546,7 @@ yydefault: } case 462: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2419 + //line parser/php7.y:2419 { // TODO: Cannot use list() as standalone expression list := expr.NewList(yyDollar[3].list) @@ -5560,13 +5559,13 @@ yydefault: } case 463: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2432 + //line parser/php7.y:2432 { yyVAL.list = append(yyDollar[1].list, yyDollar[2].node) } case 464: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2434 + //line parser/php7.y:2434 { encapsed := scalar.NewEncapsedStringPart(yyDollar[2].token.Value) positions.AddPosition(encapsed, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5575,13 +5574,13 @@ yydefault: } case 465: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2440 + //line parser/php7.y:2440 { yyVAL.list = []node.Node{yyDollar[1].node} } case 466: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2442 + //line parser/php7.y:2442 { encapsed := scalar.NewEncapsedStringPart(yyDollar[1].token.Value) positions.AddPosition(encapsed, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5590,7 +5589,7 @@ yydefault: } case 467: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2452 + //line parser/php7.y:2452 { name := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5602,7 +5601,7 @@ yydefault: } case 468: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2462 + //line parser/php7.y:2462 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5617,7 +5616,7 @@ yydefault: } case 469: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2475 + //line parser/php7.y:2475 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5635,7 +5634,7 @@ yydefault: } case 470: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2491 + //line parser/php7.y:2491 { yyVAL.node = expr.NewVariable(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token)) @@ -5643,7 +5642,7 @@ yydefault: } case 471: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2497 + //line parser/php7.y:2497 { name := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(name, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5655,7 +5654,7 @@ yydefault: } case 472: yyDollar = yyS[yypt-6 : yypt+1] - //line parser/parser.y:2507 + //line parser/php7.y:2507 { identifier := node.NewIdentifier(yyDollar[2].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[2].token)) @@ -5670,13 +5669,13 @@ yydefault: } case 473: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2520 + //line parser/php7.y:2520 { yyVAL.node = yyDollar[2].node } case 474: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2524 + //line parser/php7.y:2524 { yyVAL.node = scalar.NewString(yyDollar[1].token.Value) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5684,7 +5683,7 @@ yydefault: } case 475: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2530 + //line parser/php7.y:2530 { // TODO: add option to handle 64 bit integer if _, err := strconv.Atoi(yyDollar[1].token.Value); err == nil { @@ -5698,7 +5697,7 @@ yydefault: } case 476: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2542 + //line parser/php7.y:2542 { // TODO: add option to handle 64 bit integer if _, err := strconv.Atoi(yyDollar[2].token.Value); err == nil { @@ -5718,7 +5717,7 @@ yydefault: } case 477: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2560 + //line parser/php7.y:2560 { identifier := node.NewIdentifier(yyDollar[1].token.Value) positions.AddPosition(identifier, positionBuilder.NewTokenPosition(yyDollar[1].token)) @@ -5730,7 +5729,7 @@ yydefault: } case 478: yyDollar = yyS[yypt-5 : yypt+1] - //line parser/parser.y:2573 + //line parser/php7.y:2573 { yyVAL.node = expr.NewIsset(yyDollar[3].list) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[5].token)) @@ -5738,7 +5737,7 @@ yydefault: } case 479: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2579 + //line parser/php7.y:2579 { yyVAL.node = expr.NewEmpty(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5746,7 +5745,7 @@ yydefault: } case 480: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2585 + //line parser/php7.y:2585 { yyVAL.node = expr.NewInclude(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5754,7 +5753,7 @@ yydefault: } case 481: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2591 + //line parser/php7.y:2591 { yyVAL.node = expr.NewIncludeOnce(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5762,7 +5761,7 @@ yydefault: } case 482: yyDollar = yyS[yypt-4 : yypt+1] - //line parser/parser.y:2597 + //line parser/php7.y:2597 { yyVAL.node = expr.NewEval(yyDollar[3].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokensPosition(yyDollar[1].token, yyDollar[4].token)) @@ -5770,7 +5769,7 @@ yydefault: } case 483: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2603 + //line parser/php7.y:2603 { yyVAL.node = expr.NewRequire(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5778,7 +5777,7 @@ yydefault: } case 484: yyDollar = yyS[yypt-2 : yypt+1] - //line parser/parser.y:2609 + //line parser/php7.y:2609 { yyVAL.node = expr.NewRequireOnce(yyDollar[2].node) positions.AddPosition(yyVAL.node, positionBuilder.NewTokenNodePosition(yyDollar[1].token, yyDollar[2].node)) @@ -5786,19 +5785,19 @@ yydefault: } case 485: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2617 + //line parser/php7.y:2617 { yyVAL.list = []node.Node{yyDollar[1].node} } case 486: yyDollar = yyS[yypt-3 : yypt+1] - //line parser/parser.y:2618 + //line parser/php7.y:2618 { yyVAL.list = append(yyDollar[1].list, yyDollar[3].node) } case 487: yyDollar = yyS[yypt-1 : yypt+1] - //line parser/parser.y:2622 + //line parser/php7.y:2622 { yyVAL.node = yyDollar[1].node } diff --git a/parser/parser.y b/parser/php7.y similarity index 99% rename from parser/parser.y rename to parser/php7.y index 08bc40a..58327d2 100644 --- a/parser/parser.y +++ b/parser/php7.y @@ -23,7 +23,7 @@ var comments comment.Comments var positions position.Positions var positionBuilder position.Builder -func Parse(src io.Reader, fName string) (node.Node, comment.Comments, position.Positions) { +func ParsePhp7(src io.Reader, fName string) (node.Node, comment.Comments, position.Positions) { yyDebug = 0 yyErrorVerbose = true rootnode = stmt.NewStmtList([]node.Node{}) //reset