Lines Matching refs:lexer_

59     lexer_ = lexer.get();
79 lexer::SourcePosition startLoc = lexer_->GetToken().Start();
80 lexer_->NextToken();
86 blockStmt->SetRange({startLoc, lexer_->GetToken().End()});
147 while (IsModifierKind(lexer_->GetToken())) {
148 char32_t nextCp = lexer_->Lookahead();
153 lexer::TokenFlags tokenFlags = lexer_->GetToken().Flags();
161 switch (lexer_->GetToken().KeywordType()) {
177 if (lexer_->Lookahead() == lexer::LEX_CHAR_COLON || lexer_->Lookahead() == lexer::LEX_CHAR_COMMA ||
178 lexer_->Lookahead() == lexer::LEX_CHAR_RIGHT_PAREN || lexer_->Lookahead() == lexer::LEX_CHAR_QUESTION ||
179 lexer_->Lookahead() == lexer::LEX_CHAR_RIGHT_BRACE || lexer_->Lookahead() == lexer::LEX_CHAR_LESS_THAN) {
183 auto pos = lexer_->Save();
184 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
187 lexer_->Rewind(pos);
192 lexer_->Rewind(pos);
257 if (lexer_->GetToken().Type() != lexer::TokenType::LITERAL_IDENT) {
261 auto keywordType = lexer_->GetToken().KeywordType();
271 if ((lexer_->GetToken().Flags() & lexer::TokenFlags::HAS_ESCAPE) != 0) {
277 desc->methodStart = lexer_->GetToken().Start();
279 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
299 const util::StringView &propNameStr = lexer_->GetToken().Ident();
302 if (lexer_->Lookahead() != lexer::LEX_CHAR_LEFT_PAREN) {
316 desc->methodStart = lexer_->GetToken().Start();
332 lexer_->NextToken(); // eat left square bracket
336 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_SQUARE_BRACKET) {
346 if (lexer_->GetToken().IsKeyword()) {
347 lexer_->GetToken().SetTokenType(lexer::TokenType::LITERAL_IDENT);
350 switch (lexer_->GetToken().Type()) {
354 propName = AllocNode<ir::Identifier>(lexer_->GetToken().Ident(), Allocator());
355 propName->SetRange(lexer_->GetToken().Loc());
362 if (lexer_->GetToken().Ident().Is("constructor")) {
366 if (lexer_->GetToken().Ident().Is("prototype") && (desc->modifiers & ir::ModifierFlags::STATIC) != 0) {
370 propName = AllocNode<ir::StringLiteral>(lexer_->GetToken().String());
371 propName->SetRange(lexer_->GetToken().Loc());
377 if ((lexer_->GetToken().Flags() & lexer::TokenFlags::NUMBER_BIGINT) != 0) {
378 propName = AllocNode<ir::BigIntLiteral>(lexer_->GetToken().BigInt());
380 propName = AllocNode<ir::NumberLiteral>(lexer_->GetToken().GetNumber());
383 propName->SetRange(lexer_->GetToken().Loc());
397 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
404 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_LEFT_PARENTHESIS) {
488 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_SUBSTITUTION) {
489 lexer_->NextToken(); // eat equals
509 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_MULTIPLY) {
514 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
515 *nextCp = lexer_->Lookahead();
520 size_t iterIdx = lexer_->GetToken().Start().index;
521 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
523 if (lexer_->GetToken().Type() != lexer::TokenType::LITERAL_IDENT ||
524 (lexer_->GetToken().Start().index - iterIdx > 1)) {
531 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_HASH_MARK) {
537 *nextCp = lexer_->Lookahead();
549 const lexer::SourcePosition &startPos = lexer_->GetToken().Start();
551 lexer_->NextToken(); // eat 'static'
556 lexer_->NextToken(); // eat '{'
562 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_BRACE) {
577 staticBlock->SetRange({startPos, lexer_->GetToken().End()});
579 lexer_->NextToken(); // eat '}'
588 if (lexer_->GetToken().KeywordType() == lexer::TokenType::KEYW_STATIC &&
589 lexer_->Lookahead() == lexer::LEX_CHAR_LEFT_BRACE) {
598 desc.propStart = lexer_->GetToken().Start();
601 char32_t nextCp = lexer_->Lookahead();
613 if (property != nullptr && lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_SEMI_COLON &&
614 lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_BRACE &&
615 (lexer_->GetToken().Flags() & lexer::TokenFlags::NEW_LINE) == 0 &&
621 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_SEMI_COLON) {
622 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
673 ctor->SetRange({startLoc, lexer_->GetToken().End()});
692 if (lexer_->GetToken().Type() == lexer::TokenType::LITERAL_IDENT) {
728 if (lexer_->GetToken().Type() == lexer::TokenType::KEYW_EXTENDS) {
729 lexer_->NextToken();
744 lexer_->NextToken();
779 lexer::SourcePosition startLoc = lexer_->GetToken().Start();
780 lexer_->NextToken(lexer::NextTokenFlags::KEYWORD_TO_IDENT);
787 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_FORMAT &&
788 lexer_->Lookahead() == static_cast<char32_t>(ARRAY_FORMAT_NODE)) {
790 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_BRACE) {
794 while (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_BRACE &&
795 lexer_->GetToken().Type() != lexer::TokenType::EOS) {
796 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_SEMI_COLON) {
797 lexer_->NextToken();
803 lexer_->NextToken();
815 lexer::SourcePosition endLoc = lexer_->GetToken().End();
817 lexer_->NextToken();
830 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_PARENTHESIS) {
849 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_LEFT_PARENTHESIS) {
850 lexer_->NextToken(); // eat '('
855 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_FORMAT &&
856 lexer_->Lookahead() == static_cast<char32_t>(ARRAY_FORMAT_NODE)) {
859 while (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_PARENTHESIS) {
868 if (lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_COMMA) {
869 lexer_->NextToken();
870 } else if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_PARENTHESIS) {
876 ASSERT(lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_RIGHT_PARENTHESIS);
877 lexer_->NextToken();
890 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_LEFT_BRACE) {
903 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_LEFT_PARENTHESIS) {
912 lexer_->NextToken(); // eat '('
936 lexer::SourcePosition startLoc = lexer_->GetToken().Start();
958 ASSERT(lexer_->GetToken().Type() == lexer::TokenType::PUNCTUATOR_PERIOD_PERIOD_PERIOD);
959 lexer::SourcePosition startLocation = lexer_->GetToken().Start();
961 lexer_->NextToken();
985 ASSERT(lexer_->GetToken().Type() == lexer::TokenType::LITERAL_IDENT);
986 CheckRestrictedBinding(lexer_->GetToken().KeywordType());
995 lexer_->GetToken().Start());
1013 if (lexer_->GetToken().Type() == lexer::TokenType::LITERAL_IDENT) {
1107 lexer_->GetToken().Start());
1144 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_LEFT_SQUARE_BRACKET) {
1148 lexer_->NextToken();
1149 if (lexer_->GetToken().Type() != lexer::TokenType::LITERAL_IDENT || !lexer_->GetToken().Ident().Is("Symbol")) {
1153 lexer_->NextToken();
1154 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_PERIOD) {
1158 lexer_->NextToken();
1159 if (lexer_->GetToken().Type() != lexer::TokenType::LITERAL_IDENT || !lexer_->GetToken().Ident().Is("iterator")) {
1163 lexer_->NextToken();
1164 if (lexer_->GetToken().Type() != lexer::TokenType::PUNCTUATOR_RIGHT_SQUARE_BRACKET) {
1174 auto const &token = lexer_->GetToken();
1202 ident->SetRange({tokenStart, lexer_->GetToken().End()});
1204 lexer_->NextToken();
1211 if (lexer_->GetToken().Type() == tokenType) {
1213 lexer_->NextToken();
1232 ThrowSyntaxError(errorMessage, lexer_->GetToken().Start());
1237 ThrowSyntaxError(list, lexer_->GetToken().Start());
1264 lexer_->GetToken().SetTokenType(tokenType);
1269 LogSyntaxError(errorMessage, lexer_->GetToken().Start());
1274 LogSyntaxError(list, lexer_->GetToken().Start());
1311 if (lexer_->GetToken().KeywordType() != lexer::TokenType::KEYW_AS) {
1315 if ((lexer_->GetToken().Flags() & lexer::TokenFlags::HAS_ESCAPE) != 0U) {