@@ -796,8 +796,6 @@ private function isExpressionStartFn() {
796796 return $ this ->checkToken (TokenKind::BackslashToken);
797797
798798 // literal
799- case TokenKind::TemplateStringStart:
800-
801799 case TokenKind::DecimalLiteralToken: // TODO merge dec, oct, hex, bin, float -> NumericLiteral
802800 case TokenKind::OctalLiteralToken:
803801 case TokenKind::HexadecimalLiteralToken:
@@ -808,10 +806,7 @@ private function isExpressionStartFn() {
808806 case TokenKind::InvalidBinaryLiteral:
809807 case TokenKind::IntegerLiteralToken:
810808
811- case TokenKind::StringLiteralToken: // TODO merge unterminated
812- case TokenKind::UnterminatedStringLiteralToken:
813- case TokenKind::NoSubstitutionTemplateLiteral:
814- case TokenKind::UnterminatedNoSubstitutionTemplateLiteral:
809+ case TokenKind::StringLiteralToken:
815810
816811 case TokenKind::SingleQuoteToken:
817812 case TokenKind::DoubleQuoteToken:
@@ -854,29 +849,6 @@ private function isExpressionStartFn() {
854849 };
855850 }
856851
857- private function parseTemplateString ($ parentNode ) {
858- $ templateNode = new TemplateExpression ();
859- $ templateNode ->parent = $ parentNode ;
860- $ templateNode ->children = array ();
861- do {
862- $ templateNode ->children [] = $ this ->getCurrentToken ();
863- $ this ->advanceToken ();
864- $ token = $ this ->getCurrentToken ();
865-
866- if ($ token ->kind === TokenKind::VariableName) {
867- $ templateNode ->children [] = $ token ;
868- // $this->advanceToken();
869- // $token = $this->getCurrentToken();
870- // TODO figure out how to expose this in TokenStreamProviderInterface
871- $ this ->token = $ this ->lexer ->reScanTemplateToken ($ token );
872- $ token = $ this ->getCurrentToken ();
873- }
874- } while ($ token ->kind === TokenKind::TemplateStringMiddle);
875-
876- $ templateNode ->children [] = $ this ->eat (TokenKind::TemplateStringEnd);
877- return $ templateNode ;
878- }
879-
880852 private function parsePrimaryExpression ($ parentNode ) {
881853 $ token = $ this ->getCurrentToken ();
882854 switch ($ token ->kind ) {
@@ -891,10 +863,6 @@ private function parsePrimaryExpression($parentNode) {
891863 case TokenKind::NamespaceKeyword:
892864 return $ this ->parseQualifiedName ($ parentNode );
893865
894- // literal
895- case TokenKind::TemplateStringStart:
896- return $ this ->parseTemplateString ($ parentNode );
897-
898866 case TokenKind::DecimalLiteralToken: // TODO merge dec, oct, hex, bin, float -> NumericLiteral
899867 case TokenKind::OctalLiteralToken:
900868 case TokenKind::HexadecimalLiteralToken:
@@ -906,10 +874,7 @@ private function parsePrimaryExpression($parentNode) {
906874 case TokenKind::IntegerLiteralToken:
907875 return $ this ->parseNumericLiteralExpression ($ parentNode );
908876
909- case TokenKind::StringLiteralToken: // TODO merge unterminated
910- case TokenKind::UnterminatedStringLiteralToken:
911- case TokenKind::NoSubstitutionTemplateLiteral:
912- case TokenKind::UnterminatedNoSubstitutionTemplateLiteral:
877+ case TokenKind::StringLiteralToken:
913878 return $ this ->parseStringLiteralExpression ($ parentNode );
914879
915880 case TokenKind::DoubleQuoteToken:
@@ -2004,10 +1969,7 @@ private function parseDeclareDirective($parentNode) {
20041969 TokenKind::InvalidOctalLiteralToken,
20051970 TokenKind::InvalidHexadecimalLiteral,
20061971 TokenKind::InvalidBinaryLiteral,
2007- TokenKind::StringLiteralToken,
2008- TokenKind::UnterminatedStringLiteralToken,
2009- TokenKind::NoSubstitutionTemplateLiteral,
2010- TokenKind::UnterminatedNoSubstitutionTemplateLiteral
1972+ TokenKind::StringLiteralToken
20111973 ); // TODO simplify
20121974
20131975 return $ declareDirective ;
0 commit comments