add Heredoc node

This commit is contained in:
z7zmey
2018-04-05 13:47:36 +03:00
parent a0cc61bdc0
commit 9ea1f05f90
12 changed files with 676 additions and 459 deletions

View File

@@ -8481,6 +8481,8 @@ yyrule141: // [b]?\<\<\<[ \t]*({VAR_NAME}|([']{VAR_NAME}['])|(["]{VAR_NAME}["]))
}
break
}
heredocToken := make([]lex.Char, lblLast-lblFirst+1)
copy(heredocToken, tb[lblFirst:lblLast+1])
switch tb[lblFirst].Rune {
case '\'':
lblFirst++
@@ -8513,7 +8515,7 @@ yyrule141: // [b]?\<\<\<[ \t]*({VAR_NAME}|([']{VAR_NAME}['])|(["]{VAR_NAME}["]))
}
}
l.ungetChars(ungetCnt)
lval.Token(l.newToken(tb))
lval.Token(l.newToken(heredocToken))
return T_START_HEREDOC
}
yyrule142: // .|[ \t\n\r]

View File

@@ -366,6 +366,9 @@ NEW_LINE (\r|\n|\r\n)
break
}
heredocToken := make([]lex.Char, lblLast - lblFirst + 1)
copy(heredocToken, tb[lblFirst:lblLast+1])
switch tb[lblFirst].Rune {
case '\'' :
lblFirst++
@@ -402,7 +405,7 @@ NEW_LINE (\r|\n|\r\n)
l.ungetChars(ungetCnt)
lval.Token(l.newToken(tb));
lval.Token(l.newToken(heredocToken));
return T_START_HEREDOC
<NOWDOC>.|[ \t\n\r]