refactoring: create "ScalarEncapsedStringBrackets" node

This commit is contained in:
Vadym Slizov
2020-12-28 00:53:48 +02:00
parent 38141ce97f
commit 2990f0cc2d
14 changed files with 120 additions and 78 deletions

View File

@@ -4332,14 +4332,14 @@ func TestScalarEncapsed_StringVarCurveOpen(t *testing.T) {
Value: []byte("$a"),
},
},
&ast.ParserBrackets{
&ast.ScalarEncapsedStringBrackets{
Position: &position.Position{
StartLine: 1,
EndLine: 1,
StartPos: 7,
EndPos: 11,
},
OpenBracketTkn: &token.Token{
OpenCurlyBracketTkn: &token.Token{
ID: token.T_CURLY_OPEN,
Value: []byte("{"),
Position: &position.Position{
@@ -4349,7 +4349,7 @@ func TestScalarEncapsed_StringVarCurveOpen(t *testing.T) {
EndPos: 8,
},
},
Child: &ast.ExprVariable{
Var: &ast.ExprVariable{
Position: &position.Position{
StartLine: 1,
EndLine: 1,
@@ -4376,7 +4376,7 @@ func TestScalarEncapsed_StringVarCurveOpen(t *testing.T) {
Value: []byte("$b"),
},
},
CloseBracketTkn: &token.Token{
CloseCurlyBracketTkn: &token.Token{
ID: token.ID(125),
Value: []byte("}"),
Position: &position.Position{
@@ -5047,14 +5047,14 @@ func TestScalarEncapsed_CurlyOpenMethodCall(t *testing.T) {
},
Value: []byte("test "),
},
&ast.ParserBrackets{
&ast.ScalarEncapsedStringBrackets{
Position: &position.Position{
StartLine: 1,
EndLine: 1,
StartPos: 9,
EndPos: 22,
},
OpenBracketTkn: &token.Token{
OpenCurlyBracketTkn: &token.Token{
ID: token.T_CURLY_OPEN,
Value: []byte("{"),
Position: &position.Position{
@@ -5064,7 +5064,7 @@ func TestScalarEncapsed_CurlyOpenMethodCall(t *testing.T) {
EndPos: 10,
},
},
Child: &ast.ExprMethodCall{
Var: &ast.ExprMethodCall{
Position: &position.Position{
StartLine: 1,
EndLine: 1,
@@ -5148,7 +5148,7 @@ func TestScalarEncapsed_CurlyOpenMethodCall(t *testing.T) {
},
},
},
CloseBracketTkn: &token.Token{
CloseCurlyBracketTkn: &token.Token{
ID: token.ID(125),
Value: []byte("}"),
Position: &position.Position{

10
internal/php7/php7.go generated
View File

@@ -6912,11 +6912,11 @@ yydefault:
yyDollar = yyS[yypt-3 : yypt+1]
// line internal/php7/php7.y:4210
{
yyVAL.node = &ast.ParserBrackets{
Position: yylex.(*Parser).builder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token),
OpenBracketTkn: yyDollar[1].token,
Child: yyDollar[2].node,
CloseBracketTkn: yyDollar[3].token,
yyVAL.node = &ast.ScalarEncapsedStringBrackets{
Position: yylex.(*Parser).builder.NewTokensPosition(yyDollar[1].token, yyDollar[3].token),
OpenCurlyBracketTkn: yyDollar[1].token,
Var: yyDollar[2].node,
CloseCurlyBracketTkn: yyDollar[3].token,
}
}
case 481:

View File

@@ -4208,11 +4208,11 @@ encaps_var:
}
| T_CURLY_OPEN variable '}'
{
$$ = &ast.ParserBrackets{
Position: yylex.(*Parser).builder.NewTokensPosition($1, $3),
OpenBracketTkn: $1,
Child: $2,
CloseBracketTkn: $3,
$$ = &ast.ScalarEncapsedStringBrackets{
Position: yylex.(*Parser).builder.NewTokensPosition($1, $3),
OpenCurlyBracketTkn: $1,
Var: $2,
CloseCurlyBracketTkn: $3,
}
}
;