• Home
  • Raw
  • Download

Lines Matching full:lexer

29 #include "lexer/lexer.h"
30 #include "lexer/ETSLexer.h"
130 while (Lexer()->GetToken().Type() != lexer::TokenType::EOS) { in ParseTopLevelStatements()
131 util::ErrorRecursionGuard infiniteLoopBlocker(Lexer()); in ParseTopLevelStatements()
133 if (Lexer()->TryEatTokenType(lexer::TokenType::PUNCTUATOR_SEMI_COLON)) { in ParseTopLevelStatements()
148 lexer::SourcePosition pos) in ValidateExportableStatement()
175 Lexer()->NextToken(); // eat '@' in ParseAnnotation()
176 if (Lexer()->GetToken().Type() == lexer::TokenType::KEYW_INTERFACE) { in ParseAnnotation()
180 auto savePos = Lexer()->GetToken().Start(); in ParseAnnotation()
194 (Lexer()->GetToken().Type() == lexer::TokenType::PUNCTUATOR_MULTIPLY || in ParseTopLevelDeclStatement()
195 Lexer()->GetToken().Type() == lexer::TokenType::PUNCTUATOR_LEFT_BRACE)) { in ParseTopLevelDeclStatement()
200 auto token = Lexer()->GetToken(); in ParseTopLevelDeclStatement()
202 case lexer::TokenType::KEYW_FUNCTION: { in ParseTopLevelDeclStatement()
208 case lexer::TokenType::KEYW_CONST: in ParseTopLevelDeclStatement()
211 case lexer::TokenType::KEYW_LET: in ParseTopLevelDeclStatement()
214 case lexer::TokenType::KEYW_NAMESPACE: in ParseTopLevelDeclStatement()
215 case lexer::TokenType::KEYW_STATIC: in ParseTopLevelDeclStatement()
216 case lexer::TokenType::KEYW_ABSTRACT: in ParseTopLevelDeclStatement()
217 case lexer::TokenType::KEYW_FINAL: in ParseTopLevelDeclStatement()
218 case lexer::TokenType::KEYW_ENUM: in ParseTopLevelDeclStatement()
219 case lexer::TokenType::KEYW_INTERFACE: in ParseTopLevelDeclStatement()
220 case lexer::TokenType::KEYW_CLASS: in ParseTopLevelDeclStatement()
223 case lexer::TokenType::PUNCTUATOR_AT: in ParseTopLevelDeclStatement()
226 case lexer::TokenType::LITERAL_IDENT: { in ParseTopLevelDeclStatement()
254 Lexer()->NextToken(); in ParseTopLevelDeclaration()
258 bool ETSParser::ValidateLabeledStatement(lexer::TokenType type) in ValidateLabeledStatement()
260 if (type != lexer::TokenType::KEYW_DO && type != lexer::TokenType::KEYW_WHILE && in ValidateLabeledStatement()
261 type != lexer::TokenType::KEYW_FOR && type != lexer::TokenType::KEYW_SWITCH) { in ValidateLabeledStatement()
262 LogSyntaxError("Label must be followed by a loop statement", Lexer()->GetToken().Start()); in ValidateLabeledStatement()
271 LogSyntaxError({"Unexpected token: '", lexer::TokenToString(lexer::TokenType::KEYW_IN), "'."}); in ValidateForInStatement()
277 …LogSyntaxError({"Unexpected token: '", lexer::TokenToString(lexer::TokenType::KEYW_DEBUGGER), "'."… in ParseDebuggerStatement()
291 lexer::SourcePosition startLoc = Lexer()->GetToken().Start(); in ParseAssertStatement()
292 Lexer()->NextToken(); in ParseAssertStatement()
299 lexer::SourcePosition endLoc = test->End(); in ParseAssertStatement()
302 if (Lexer()->GetToken().Type() == lexer::TokenType::PUNCTUATOR_COLON) { in ParseAssertStatement()
303 Lexer()->NextToken(); // eat ':' in ParseAssertStatement()
319 lexer::SourcePosition startLoc = Lexer()->GetToken().Start(); in ParseTryStatement()
320 Lexer()->NextToken(); // eat the 'try' keyword in ParseTryStatement()
326 while (Lexer()->GetToken().KeywordType() == lexer::TokenType::KEYW_CATCH) { in ParseTryStatement()
335 if (Lexer()->GetToken().KeywordType() == lexer::TokenType::KEYW_FINALLY) { in ParseTryStatement()
336 Lexer()->NextToken(); // eat 'finally' keyword in ParseTryStatement()
346lexer::SourcePosition endLoc = finalizer != nullptr ? finalizer->End() : catchClauses.back()->End(… in ParseTryStatement()
372 LogSyntaxError("Illegal start of STRUCT expression", Lexer()->GetToken().Start()); in ParseStructStatement()