Lines Matching refs:Token

21   KEYWORD("async", Token::ASYNC)                            \
22 KEYWORD("await", Token::AWAIT) \
24 KEYWORD("break", Token::BREAK) \
26 KEYWORD("case", Token::CASE) \
27 KEYWORD("catch", Token::CATCH) \
28 KEYWORD("class", Token::CLASS) \
29 KEYWORD("const", Token::CONST) \
30 KEYWORD("continue", Token::CONTINUE) \
32 KEYWORD("debugger", Token::DEBUGGER) \
33 KEYWORD("default", Token::DEFAULT) \
34 KEYWORD("delete", Token::DELETE) \
35 KEYWORD("do", Token::DO) \
37 KEYWORD("else", Token::ELSE) \
38 KEYWORD("enum", Token::ENUM) \
39 KEYWORD("export", Token::EXPORT) \
40 KEYWORD("extends", Token::EXTENDS) \
42 KEYWORD("false", Token::FALSE_LITERAL) \
43 KEYWORD("finally", Token::FINALLY) \
44 KEYWORD("for", Token::FOR) \
45 KEYWORD("function", Token::FUNCTION) \
47 KEYWORD("get", Token::GET) \
49 KEYWORD("if", Token::IF) \
50 KEYWORD("implements", Token::FUTURE_STRICT_RESERVED_WORD) \
51 KEYWORD("import", Token::IMPORT) \
52 KEYWORD("in", Token::IN) \
53 KEYWORD("instanceof", Token::INSTANCEOF) \
54 KEYWORD("interface", Token::FUTURE_STRICT_RESERVED_WORD) \
56 KEYWORD("let", Token::LET) \
58 KEYWORD("new", Token::NEW) \
59 KEYWORD("null", Token::NULL_LITERAL) \
61 KEYWORD("package", Token::FUTURE_STRICT_RESERVED_WORD) \
62 KEYWORD("private", Token::FUTURE_STRICT_RESERVED_WORD) \
63 KEYWORD("protected", Token::FUTURE_STRICT_RESERVED_WORD) \
64 KEYWORD("public", Token::FUTURE_STRICT_RESERVED_WORD) \
66 KEYWORD("return", Token::RETURN) \
68 KEYWORD("set", Token::SET) \
69 KEYWORD("static", Token::STATIC) \
70 KEYWORD("super", Token::SUPER) \
71 KEYWORD("switch", Token::SWITCH) \
73 KEYWORD("this", Token::THIS) \
74 KEYWORD("throw", Token::THROW) \
75 KEYWORD("true", Token::TRUE_LITERAL) \
76 KEYWORD("try", Token::TRY) \
77 KEYWORD("typeof", Token::TYPEOF) \
79 KEYWORD("var", Token::VAR) \
80 KEYWORD("void", Token::VOID) \
82 KEYWORD("while", Token::WHILE) \
83 KEYWORD("with", Token::WITH) \
85 KEYWORD("yield", Token::YIELD)
95 V8_INLINE Token::Value KeywordOrIdentifierToken(const uint8_t* input,
123 STATIC_ASSERT(sizeof(Token::Value) == 1);
127 constexpr Token::Value GetOneCharToken(char c) {
130 c == '(' ? Token::LPAREN :
131 c == ')' ? Token::RPAREN :
132 c == '{' ? Token::LBRACE :
133 c == '}' ? Token::RBRACE :
134 c == '[' ? Token::LBRACK :
135 c == ']' ? Token::RBRACK :
136 c == '?' ? Token::CONDITIONAL :
137 c == ':' ? Token::COLON :
138 c == ';' ? Token::SEMICOLON :
139 c == ',' ? Token::COMMA :
140 c == '.' ? Token::PERIOD :
141 c == '|' ? Token::BIT_OR :
142 c == '&' ? Token::BIT_AND :
143 c == '^' ? Token::BIT_XOR :
144 c == '~' ? Token::BIT_NOT :
145 c == '!' ? Token::NOT :
146 c == '<' ? Token::LT :
147 c == '>' ? Token::GT :
148 c == '%' ? Token::MOD :
149 c == '=' ? Token::ASSIGN :
150 c == '+' ? Token::ADD :
151 c == '-' ? Token::SUB :
152 c == '*' ? Token::MUL :
153 c == '/' ? Token::DIV :
154 c == '#' ? Token::PRIVATE_NAME :
155 c == '"' ? Token::STRING :
156 c == '\'' ? Token::STRING :
157 c == '`' ? Token::TEMPLATE_SPAN :
158 c == '\\' ? Token::IDENTIFIER :
160 c == ' ' ? Token::WHITESPACE :
161 c == '\t' ? Token::WHITESPACE :
162 c == '\v' ? Token::WHITESPACE :
163 c == '\f' ? Token::WHITESPACE :
164 c == '\r' ? Token::WHITESPACE :
165 c == '\n' ? Token::WHITESPACE :
167 IsDecimalDigit(c) ? Token::NUMBER :
168 IsAsciiIdentifier(c) ? Token::IDENTIFIER :
169 Token::ILLEGAL;
174 static const constexpr Token::Value one_char_tokens[128] = {
182 V8_INLINE Token::Value Scanner::ScanIdentifierOrKeyword() {
259 V8_INLINE Token::Value Scanner::ScanIdentifierOrKeywordInner() {
297 if (!CanBeKeyword(scan_flags)) return Token::IDENTIFIER;
311 return Token::ILLEGAL;
321 V8_INLINE Token::Value Scanner::SkipWhiteSpace() {
338 return Token::ILLEGAL;
341 return Token::WHITESPACE;
344 V8_INLINE Token::Value Scanner::ScanSingleToken() {
345 Token::Value token;
353 case Token::LPAREN:
354 case Token::RPAREN:
355 case Token::LBRACE:
356 case Token::RBRACE:
357 case Token::LBRACK:
358 case Token::RBRACK:
359 case Token::COLON:
360 case Token::SEMICOLON:
361 case Token::COMMA:
362 case Token::BIT_NOT:
363 case Token::ILLEGAL:
367 case Token::CONDITIONAL:
372 if (!IsDecimalDigit(c0_)) return Token::QUESTION_PERIOD;
375 return Select('=', Token::ASSIGN_NULLISH, Token::NULLISH);
377 return Token::CONDITIONAL;
379 case Token::STRING:
382 case Token::LT:
385 if (c0_ == '=') return Select(Token::LTE);
386 if (c0_ == '<') return Select('=', Token::ASSIGN_SHL, Token::SHL);
391 return Token::LT;
393 case Token::GT:
396 if (c0_ == '=') return Select(Token::GTE);
400 if (c0_ == '=') return Select(Token::ASSIGN_SAR);
401 if (c0_ == '>') return Select('=', Token::ASSIGN_SHR, Token::SHR);
402 return Token::SAR;
404 return Token::GT;
406 case Token::ASSIGN:
409 if (c0_ == '=') return Select('=', Token::EQ_STRICT, Token::EQ);
410 if (c0_ == '>') return Select(Token::ARROW);
411 return Token::ASSIGN;
413 case Token::NOT:
416 if (c0_ == '=') return Select('=', Token::NE_STRICT, Token::NE);
417 return Token::NOT;
419 case Token::ADD:
422 if (c0_ == '+') return Select(Token::INC);
423 if (c0_ == '=') return Select(Token::ASSIGN_ADD);
424 return Token::ADD;
426 case Token::SUB:
437 return Token::DEC;
439 if (c0_ == '=') return Select(Token::ASSIGN_SUB);
440 return Token::SUB;
442 case Token::MUL:
445 if (c0_ == '*') return Select('=', Token::ASSIGN_EXP, Token::EXP);
446 if (c0_ == '=') return Select(Token::ASSIGN_MUL);
447 return Token::MUL;
449 case Token::MOD:
451 return Select('=', Token::ASSIGN_MOD, Token::MOD);
453 case Token::DIV:
471 if (c0_ == '=') return Select(Token::ASSIGN_DIV);
472 return Token::DIV;
474 case Token::BIT_AND:
477 if (c0_ == '&') return Select('=', Token::ASSIGN_AND, Token::AND);
478 if (c0_ == '=') return Select(Token::ASSIGN_BIT_AND);
479 return Token::BIT_AND;
481 case Token::BIT_OR:
484 if (c0_ == '|') return Select('=', Token::ASSIGN_OR, Token::OR);
485 if (c0_ == '=') return Select(Token::ASSIGN_BIT_OR);
486 return Token::BIT_OR;
488 case Token::BIT_XOR:
490 return Select('=', Token::ASSIGN_BIT_XOR, Token::BIT_XOR);
492 case Token::PERIOD:
500 return Token::ELLIPSIS;
503 return Token::PERIOD;
505 case Token::TEMPLATE_SPAN:
509 case Token::PRIVATE_NAME:
516 case Token::WHITESPACE:
520 case Token::NUMBER:
523 case Token::IDENTIFIER:
536 return source_->has_parser_error() ? Token::ILLEGAL : Token::EOS;
541 } while (token == Token::WHITESPACE);
550 DCHECK_IMPLIES(has_parser_error(), next_desc->token == Token::ILLEGAL);