func IsId(tkn Token) bool
func IsUnreservedWord(tkn Token) bool
Token is the set of lexical tokens in JavaScript (ECMA5).
type Token int
const ( ILLEGAL Token EOF COMMENT STRING NUMBER PLUS // + MINUS // - MULTIPLY // * EXPONENT // ** SLASH // / REMAINDER // % AND // & OR // | EXCLUSIVE_OR // ^ SHIFT_LEFT // << SHIFT_RIGHT // >> UNSIGNED_SHIFT_RIGHT // >>> ADD_ASSIGN // += SUBTRACT_ASSIGN // -= MULTIPLY_ASSIGN // *= EXPONENT_ASSIGN // **= QUOTIENT_ASSIGN // /= REMAINDER_ASSIGN // %= AND_ASSIGN // &= OR_ASSIGN // |= EXCLUSIVE_OR_ASSIGN // ^= SHIFT_LEFT_ASSIGN // <<= SHIFT_RIGHT_ASSIGN // >>= UNSIGNED_SHIFT_RIGHT_ASSIGN // >>>= LOGICAL_AND // && LOGICAL_OR // || COALESCE // ?? INCREMENT // ++ DECREMENT // -- EQUAL // == STRICT_EQUAL // === LESS // < GREATER // > ASSIGN // = NOT // ! BITWISE_NOT // ~ NOT_EQUAL // != STRICT_NOT_EQUAL // !== LESS_OR_EQUAL // <= GREATER_OR_EQUAL // >= LEFT_PARENTHESIS // ( LEFT_BRACKET // [ LEFT_BRACE // { COMMA // , PERIOD // . RIGHT_PARENTHESIS // ) RIGHT_BRACKET // ] RIGHT_BRACE // } SEMICOLON // ; COLON // : QUESTION_MARK // ? QUESTION_DOT // ?. ARROW // => ELLIPSIS // ... BACKTICK // ` PRIVATE_IDENTIFIER IDENTIFIER KEYWORD BOOLEAN NULL IF IN OF DO VAR FOR NEW TRY THIS ELSE CASE VOID WITH CONST WHILE BREAK CATCH THROW CLASS SUPER RETURN TYPEOF DELETE SWITCH DEFAULT FINALLY EXTENDS FUNCTION CONTINUE DEBUGGER INSTANCEOF ESCAPED_RESERVED_WORD LET STATIC ASYNC AWAIT YIELD )
func IsKeyword(literal string) (Token, bool)
IsKeyword returns the keyword token if literal is a keyword, a KEYWORD token if the literal is a future keyword (const, let, class, super, ...), or 0 if the literal is not a keyword.
If the literal is a keyword, IsKeyword returns a second value indicating if the literal is considered a future keyword in strict-mode only.
7.6.1.2 Future Reserved Words:
const class enum export extends import super
7.6.1.2 Future Reserved Words (strict):
implements interface let package private protected public static
func (tkn Token) String() string
String returns the string corresponding to the token. For operators, delimiters, and keywords the string is the actual token string (e.g., for the token PLUS, the String() is "+"). For all other tokens the string corresponds to the token name (e.g. for the token IDENTIFIER, the string is "IDENTIFIER").