1 // Copyright 2004 Adam Megacz, see the COPYING file for licensing [GPL]
4 /** this class contains a <tt>public static final int</tt> for each valid token */
7 // Token Constants //////////////////////////////////////////////////////////
9 // arithmetic operations; also valid as bytecodes
10 public static final int BITOR = 0; // |
11 public static final int ASSIGN_BITOR = 1; // |=
12 public static final int BITXOR = 2; // ^
13 public static final int ASSIGN_BITXOR = 3; // ^=
14 public static final int BITAND = 4; // &
15 public static final int ASSIGN_BITAND = 5; // &=
16 public static final int LSH = 6; // <<
17 public static final int ASSIGN_LSH = 7; // <<=
18 public static final int RSH = 8; // >>
19 public static final int ASSIGN_RSH = 9; // >>=
20 public static final int URSH = 10; // >>>
21 public static final int ASSIGN_URSH = 11; // >>>=
22 public static final int ADD = 12; // +
23 public static final int ASSIGN_ADD = 13; // +=
24 public static final int SUB = 14; // -
25 public static final int ASSIGN_SUB = 15; // -=
26 public static final int MUL = 16; // *
27 public static final int ASSIGN_MUL = 17; // *=
28 public static final int DIV = 18; // /
29 public static final int ASSIGN_DIV = 19; // /=
30 public static final int MOD = 20; // %
31 public static final int ASSIGN_MOD = 21; // %=
32 public static final int BITNOT = 22; // ~
33 public static final int ASSIGN_BITNOT = 23; // ~=
35 // logical operations; also valid as bytecodes
36 public static final int OR = 24; // ||
37 public static final int AND = 25; // &&
38 public static final int BANG = 26; // !
40 // equality operations; also valid as bytecodes
41 public static final int EQ = 27; // ==
42 public static final int NE = 28; // !=
43 public static final int LT = 29; // <
44 public static final int LE = 30; // <=
45 public static final int GT = 31; // >
46 public static final int GE = 32; // >=
47 public static final int SHEQ = 33; // ===
48 public static final int SHNE = 34; // !==
50 // other permissible bytecode tokens
51 public static final int RETURN = 35; // return
52 public static final int TYPEOF = 36; // typeof
53 public static final int BREAK = 37; // break keyword
54 public static final int CONTINUE = 38; // continue keyword
55 public static final int TRY = 39; // try
56 public static final int THROW = 40; // throw
57 public static final int ASSERT = 41; // assert keyword
59 public static final int NAME = 42; // *** identifiers ***
60 public static final int NUMBER = 43; // *** numeric literals ***
61 public static final int STRING = 44; // *** string literals ***
62 public static final int NULL = 45; // null
63 public static final int THIS = 46; // this
64 public static final int FALSE = 47; // false
65 public static final int TRUE = 48; // true
66 public static final int IN = 49; // in
68 public static final int SEMI = 50; // ;
69 public static final int LB = 51; // [
70 public static final int RB = 52; // ]
71 public static final int LC = 53; // {
72 public static final int RC = 54; // }
73 public static final int LP = 55; // (
74 public static final int RP = 56; // )
75 public static final int COMMA = 57; // ,
76 public static final int ASSIGN = 58; // =
77 public static final int HOOK = 59; // ?
78 public static final int COLON = 60; // :
79 public static final int INC = 61; // ++
80 public static final int DEC = 62; // --
81 public static final int DOT = 63; // .
82 public static final int FUNCTION = 64; // function
83 public static final int IF = 65; // if keyword
84 public static final int ELSE = 66; // else keyword
85 public static final int SWITCH = 67; // switch keyword
86 public static final int CASE = 68; // case keyword
87 public static final int DEFAULT = 69; // default keyword
88 public static final int WHILE = 70; // while keyword
89 public static final int DO = 71; // do keyword
90 public static final int FOR = 72; // for keyword
91 public static final int VAR = 73; // var keyword
92 public static final int WITH = 74; // with keyword
93 public static final int CATCH = 75; // catch keyword
94 public static final int FINALLY = 76; // finally keyword
95 public static final int RESERVED = 77; // reserved keyword
96 public static final int GRAMMAR = 78; // the grammar-definition operator (::=)
97 public static final int ADD_TRAP = 79; // the add-trap operator (++=)
98 public static final int DEL_TRAP = 80; // the del-trap operator (--=)
100 public static final int MAX_TOKEN = DEL_TRAP;
102 public final static String[] codeToString = new String[] {
103 "BITOR", "ASSIGN_BITOR", "BITXOR", "ASSIGN_BITXOR", "BITAND",
104 "ASSIGN_BITAND", "LSH", "ASSIGN_LSH", "RSH", "ASSIGN_RSH",
105 "URSH", "ASSIGN_URSH", "ADD", "ASSIGN_ADD", "SUB",
106 "ASSIGN_SUB", "MUL", "ASSIGN_MUL", "DIV", "ASSIGN_DIV", "MOD",
107 "ASSIGN_MOD", "BITNOT", "ASSIGN_BITNOT", "OR", "AND", "BANG",
108 "EQ", "NE", "LT", "LE", "GT", "GE", "SHEQ", "SHNE", "RETURN",
109 "TYPEOF", "BREAK", "CONTINUE", "TRY", "THROW", "ASSERT", "NAME",
110 "NUMBER", "STRING", "NULL", "THIS", "FALSE", "TRUE", "IN",
111 "SEMI", "LB", "RB", "LC", "RC", "LP", "RP", "COMMA", "ASSIGN",
112 "HOOK", "COLON", "INC", "DEC", "DOT", "FUNCTION", "IF",
113 "ELSE", "SWITCH", "CASE", "DEFAULT", "WHILE", "DO", "FOR",
114 "VAR", "WITH", "CATCH", "FINALLY", "RESERVED", "GRAMMAR",
115 "ADD_TRAP", "DEL_TRAP"