123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351 |
- // Code generated by tools/gen-tokens. DO NOT EDIT.
- package token
- const (
- _ Token = iota
- // Control.
- ILLEGAL
- EOF
- COMMENT
- KEYWORD
- // Types.
- STRING
- BOOLEAN
- NULL
- NUMBER
- IDENTIFIER
- // Maths.
- PLUS // +
- MINUS // -
- MULTIPLY // *
- SLASH // /
- REMAINDER // %
- // Logical and bitwise operators.
- AND // &
- OR // |
- EXCLUSIVE_OR // ^
- SHIFT_LEFT // <<
- SHIFT_RIGHT // >>
- UNSIGNED_SHIFT_RIGHT // >>>
- AND_NOT // &^
- // Math assignments.
- ADD_ASSIGN // +=
- SUBTRACT_ASSIGN // -=
- MULTIPLY_ASSIGN // *=
- QUOTIENT_ASSIGN // /=
- REMAINDER_ASSIGN // %=
- // Math and bitwise assignments.
- AND_ASSIGN // &=
- OR_ASSIGN // |=
- EXCLUSIVE_OR_ASSIGN // ^=
- SHIFT_LEFT_ASSIGN // <<=
- SHIFT_RIGHT_ASSIGN // >>=
- UNSIGNED_SHIFT_RIGHT_ASSIGN // >>>=
- AND_NOT_ASSIGN // &^=
- // Logical operators and decrement / increment.
- LOGICAL_AND // &&
- LOGICAL_OR // ||
- INCREMENT // ++
- DECREMENT // --
- // Comparison operators.
- EQUAL // ==
- STRICT_EQUAL // ===
- LESS // <
- GREATER // >
- ASSIGN // =
- NOT // !
- // Bitwise not.
- BITWISE_NOT // ~
- // Comparison operators.
- NOT_EQUAL // !=
- STRICT_NOT_EQUAL // !==
- LESS_OR_EQUAL // <=
- GREATER_OR_EQUAL // >=
- // Left operators.
- LEFT_PARENTHESIS // (
- LEFT_BRACKET // [
- LEFT_BRACE // {
- COMMA // ,
- PERIOD // .
- // Right operators.
- RIGHT_PARENTHESIS // )
- RIGHT_BRACKET // ]
- RIGHT_BRACE // }
- SEMICOLON // ;
- COLON // :
- QUESTION_MARK // ?
- // Basic flow - keywords below here.
- _
- IF
- IN
- DO
- // Declarations.
- VAR
- FOR
- NEW
- TRY
- // Advanced flow.
- THIS
- ELSE
- CASE
- VOID
- WITH
- // Loops.
- WHILE
- BREAK
- CATCH
- THROW
- // Functions.
- RETURN
- TYPEOF
- DELETE
- SWITCH
- // Fallback identifiers.
- DEFAULT
- FINALLY
- // Miscellaneous.
- FUNCTION
- CONTINUE
- DEBUGGER
- // Instance of.
- INSTANCEOF
- )
- var token2string = [...]string{
- ILLEGAL: "ILLEGAL",
- EOF: "EOF",
- COMMENT: "COMMENT",
- KEYWORD: "KEYWORD",
- STRING: "STRING",
- BOOLEAN: "BOOLEAN",
- NULL: "NULL",
- NUMBER: "NUMBER",
- IDENTIFIER: "IDENTIFIER",
- PLUS: "+",
- MINUS: "-",
- MULTIPLY: "*",
- SLASH: "/",
- REMAINDER: "%",
- AND: "&",
- OR: "|",
- EXCLUSIVE_OR: "^",
- SHIFT_LEFT: "<<",
- SHIFT_RIGHT: ">>",
- UNSIGNED_SHIFT_RIGHT: ">>>",
- AND_NOT: "&^",
- ADD_ASSIGN: "+=",
- SUBTRACT_ASSIGN: "-=",
- MULTIPLY_ASSIGN: "*=",
- QUOTIENT_ASSIGN: "/=",
- REMAINDER_ASSIGN: "%=",
- AND_ASSIGN: "&=",
- OR_ASSIGN: "|=",
- EXCLUSIVE_OR_ASSIGN: "^=",
- SHIFT_LEFT_ASSIGN: "<<=",
- SHIFT_RIGHT_ASSIGN: ">>=",
- UNSIGNED_SHIFT_RIGHT_ASSIGN: ">>>=",
- AND_NOT_ASSIGN: "&^=",
- LOGICAL_AND: "&&",
- LOGICAL_OR: "||",
- 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: "?",
- IF: "if",
- IN: "in",
- DO: "do",
- VAR: "var",
- FOR: "for",
- NEW: "new",
- TRY: "try",
- THIS: "this",
- ELSE: "else",
- CASE: "case",
- VOID: "void",
- WITH: "with",
- WHILE: "while",
- BREAK: "break",
- CATCH: "catch",
- THROW: "throw",
- RETURN: "return",
- TYPEOF: "typeof",
- DELETE: "delete",
- SWITCH: "switch",
- DEFAULT: "default",
- FINALLY: "finally",
- FUNCTION: "function",
- CONTINUE: "continue",
- DEBUGGER: "debugger",
- INSTANCEOF: "instanceof",
- }
- var keywordTable = map[string]keyword{
- "if": {
- token: IF,
- },
- "in": {
- token: IN,
- },
- "do": {
- token: DO,
- },
- "var": {
- token: VAR,
- },
- "for": {
- token: FOR,
- },
- "new": {
- token: NEW,
- },
- "try": {
- token: TRY,
- },
- "this": {
- token: THIS,
- },
- "else": {
- token: ELSE,
- },
- "case": {
- token: CASE,
- },
- "void": {
- token: VOID,
- },
- "with": {
- token: WITH,
- },
- "while": {
- token: WHILE,
- },
- "break": {
- token: BREAK,
- },
- "catch": {
- token: CATCH,
- },
- "throw": {
- token: THROW,
- },
- "return": {
- token: RETURN,
- },
- "typeof": {
- token: TYPEOF,
- },
- "delete": {
- token: DELETE,
- },
- "switch": {
- token: SWITCH,
- },
- "default": {
- token: DEFAULT,
- },
- "finally": {
- token: FINALLY,
- },
- "function": {
- token: FUNCTION,
- },
- "continue": {
- token: CONTINUE,
- },
- "debugger": {
- token: DEBUGGER,
- },
- "instanceof": {
- token: INSTANCEOF,
- },
- "const": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "class": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "enum": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "export": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "extends": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "import": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "super": {
- token: KEYWORD,
- futureKeyword: true,
- },
- "implements": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "interface": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "let": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "package": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "private": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "protected": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "public": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- "static": {
- token: KEYWORD,
- futureKeyword: true,
- strict: true,
- },
- }
|