1 |
4 |
hellwig |
/* $Id: token.h,v 1.1 2002/08/28 23:12:47 drh Exp $ */
|
2 |
|
|
/*
|
3 |
|
|
xx(symbol, value, prec, op, optree, kind, string)
|
4 |
|
|
*/
|
5 |
|
|
yy(0, 0, 0, 0, 0, 0, 0)
|
6 |
|
|
xx(FLOAT, 1, 0, 0, 0, CHAR, "float")
|
7 |
|
|
xx(DOUBLE, 2, 0, 0, 0, CHAR, "double")
|
8 |
|
|
xx(CHAR, 3, 0, 0, 0, CHAR, "char")
|
9 |
|
|
xx(SHORT, 4, 0, 0, 0, CHAR, "short")
|
10 |
|
|
xx(INT, 5, 0, 0, 0, CHAR, "int")
|
11 |
|
|
xx(UNSIGNED, 6, 0, 0, 0, CHAR, "unsigned")
|
12 |
|
|
xx(POINTER, 7, 0, 0, 0, 0, "pointer")
|
13 |
|
|
xx(VOID, 8, 0, 0, 0, CHAR, "void")
|
14 |
|
|
xx(STRUCT, 9, 0, 0, 0, CHAR, "struct")
|
15 |
|
|
xx(UNION, 10, 0, 0, 0, CHAR, "union")
|
16 |
|
|
xx(FUNCTION, 11, 0, 0, 0, 0, "function")
|
17 |
|
|
xx(ARRAY, 12, 0, 0, 0, 0, "array")
|
18 |
|
|
xx(ENUM, 13, 0, 0, 0, CHAR, "enum")
|
19 |
|
|
xx(LONG, 14, 0, 0, 0, CHAR, "long")
|
20 |
|
|
xx(CONST, 15, 0, 0, 0, CHAR, "const")
|
21 |
|
|
xx(VOLATILE, 16, 0, 0, 0, CHAR, "volatile")
|
22 |
|
|
yy(0, 17, 0, 0, 0, 0, 0)
|
23 |
|
|
yy(0, 18, 0, 0, 0, 0, 0)
|
24 |
|
|
yy(0, 19, 0, 0, 0, 0, 0)
|
25 |
|
|
yy(0, 20, 0, 0, 0, 0, 0)
|
26 |
|
|
yy(0, 21, 0, 0, 0, 0, 0)
|
27 |
|
|
yy(0, 22, 0, 0, 0, 0, 0)
|
28 |
|
|
yy(0, 23, 0, 0, 0, 0, 0)
|
29 |
|
|
yy(0, 24, 0, 0, 0, 0, 0)
|
30 |
|
|
yy(0, 25, 0, 0, 0, 0, 0)
|
31 |
|
|
yy(0, 26, 0, 0, 0, 0, 0)
|
32 |
|
|
yy(0, 27, 0, 0, 0, 0, 0)
|
33 |
|
|
yy(0, 28, 0, 0, 0, 0, "long long")
|
34 |
|
|
yy(0, 29, 0, 0, 0, 0, 0)
|
35 |
|
|
yy(0, 30, 0, 0, 0, 0, 0)
|
36 |
|
|
yy(0, 31, 0, 0, 0, 0, "const volatile")
|
37 |
|
|
xx(ID, 32, 0, 0, 0, ID, "identifier")
|
38 |
|
|
yy(0, 33, 0, 0, 0, ID, "!")
|
39 |
|
|
xx(FCON, 34, 0, 0, 0, ID, "floating constant")
|
40 |
|
|
xx(ICON, 35, 0, 0, 0, ID, "integer constant")
|
41 |
|
|
xx(SCON, 36, 0, 0, 0, ID, "string constant")
|
42 |
|
|
yy(0, 37, 13, MOD, bittree,'%', "%")
|
43 |
|
|
yy(0, 38, 8, BAND, bittree,ID, "&")
|
44 |
|
|
xx(INCR, 39, 0, ADD, addtree,ID, "++")
|
45 |
|
|
yy(0, 40, 0, 0, 0, ID, "(")
|
46 |
|
|
yy(0, 41, 0, 0, 0, ')', ")")
|
47 |
|
|
yy(0, 42, 13, MUL, multree,ID, "*")
|
48 |
|
|
yy(0, 43, 12, ADD, addtree,ID, "+")
|
49 |
|
|
yy(0, 44, 1, 0, 0, ',', ",")
|
50 |
|
|
yy(0, 45, 12, SUB, subtree,ID, "-")
|
51 |
|
|
yy(0, 46, 0, 0, 0, '.', ".")
|
52 |
|
|
yy(0, 47, 13, DIV, multree,'/', "/")
|
53 |
|
|
xx(DECR, 48, 0, SUB, subtree,ID, "--")
|
54 |
|
|
xx(DEREF, 49, 0, 0, 0, DEREF, "->")
|
55 |
|
|
xx(ANDAND, 50, 5, AND, andtree,ANDAND, "&&")
|
56 |
|
|
xx(OROR, 51, 4, OR, andtree,OROR, "||")
|
57 |
|
|
xx(LEQ, 52, 10, LE, cmptree,LEQ, "<=")
|
58 |
|
|
xx(EQL, 53, 9, EQ, eqtree, EQL, "==")
|
59 |
|
|
xx(NEQ, 54, 9, NE, eqtree, NEQ, "!=")
|
60 |
|
|
xx(GEQ, 55, 10, GE, cmptree,GEQ, ">=")
|
61 |
|
|
xx(RSHIFT, 56, 11, RSH, shtree, RSHIFT, ">>")
|
62 |
|
|
xx(LSHIFT, 57, 11, LSH, shtree, LSHIFT, "<<")
|
63 |
|
|
yy(0, 58, 0, 0, 0, ':', ":")
|
64 |
|
|
yy(0, 59, 0, 0, 0, IF, ";")
|
65 |
|
|
yy(0, 60, 10, LT, cmptree,'<', "<")
|
66 |
|
|
yy(0, 61, 2, ASGN, asgntree,'=', "=")
|
67 |
|
|
yy(0, 62, 10, GT, cmptree,'>', ">")
|
68 |
|
|
yy(0, 63, 0, 0, 0, '?', "?")
|
69 |
|
|
xx(ELLIPSIS, 64, 0, 0, 0, ELLIPSIS,"...")
|
70 |
|
|
xx(SIZEOF, 65, 0, 0, 0, ID, "sizeof")
|
71 |
|
|
yy(0, 66, 0, 0, 0, 0, 0)
|
72 |
|
|
xx(AUTO, 67, 0, 0, 0, STATIC, "auto")
|
73 |
|
|
xx(BREAK, 68, 0, 0, 0, IF, "break")
|
74 |
|
|
xx(CASE, 69, 0, 0, 0, IF, "case")
|
75 |
|
|
xx(CONTINUE, 70, 0, 0, 0, IF, "continue")
|
76 |
|
|
xx(DEFAULT, 71, 0, 0, 0, IF, "default")
|
77 |
|
|
xx(DO, 72, 0, 0, 0, IF, "do")
|
78 |
|
|
xx(ELSE, 73, 0, 0, 0, IF, "else")
|
79 |
|
|
xx(EXTERN, 74, 0, 0, 0, STATIC, "extern")
|
80 |
|
|
xx(FOR, 75, 0, 0, 0, IF, "for")
|
81 |
|
|
xx(GOTO, 76, 0, 0, 0, IF, "goto")
|
82 |
|
|
xx(IF, 77, 0, 0, 0, IF, "if")
|
83 |
|
|
xx(REGISTER, 78, 0, 0, 0, STATIC, "register")
|
84 |
|
|
xx(RETURN, 79, 0, 0, 0, IF, "return")
|
85 |
|
|
xx(SIGNED, 80, 0, 0, 0, CHAR, "signed")
|
86 |
|
|
xx(STATIC, 81, 0, 0, 0, STATIC, "static")
|
87 |
|
|
xx(SWITCH, 82, 0, 0, 0, IF, "switch")
|
88 |
|
|
xx(TYPEDEF, 83, 0, 0, 0, STATIC, "typedef")
|
89 |
|
|
xx(WHILE, 84, 0, 0, 0, IF, "while")
|
90 |
|
|
xx(TYPECODE, 85, 0, 0, 0, ID, "__typecode")
|
91 |
|
|
xx(FIRSTARG, 86, 0, 0, 0, ID, "__firstarg")
|
92 |
|
|
yy(0, 87, 0, 0, 0, 0, 0)
|
93 |
|
|
yy(0, 88, 0, 0, 0, 0, 0)
|
94 |
|
|
yy(0, 89, 0, 0, 0, 0, 0)
|
95 |
|
|
yy(0, 90, 0, 0, 0, 0, 0)
|
96 |
|
|
yy(0, 91, 0, 0, 0, '[', "[")
|
97 |
|
|
yy(0, 92, 0, 0, 0, 0, 0)
|
98 |
|
|
yy(0, 93, 0, 0, 0, ']', "]")
|
99 |
|
|
yy(0, 94, 7, BXOR, bittree,'^', "^")
|
100 |
|
|
yy(0, 95, 0, 0, 0, 0, 0)
|
101 |
|
|
yy(0, 96, 0, 0, 0, 0, 0)
|
102 |
|
|
yy(0, 97, 0, 0, 0, 0, 0)
|
103 |
|
|
yy(0, 98, 0, 0, 0, 0, 0)
|
104 |
|
|
yy(0, 99, 0, 0, 0, 0, 0)
|
105 |
|
|
yy(0, 100, 0, 0, 0, 0, 0)
|
106 |
|
|
yy(0, 101, 0, 0, 0, 0, 0)
|
107 |
|
|
yy(0, 102, 0, 0, 0, 0, 0)
|
108 |
|
|
yy(0, 103, 0, 0, 0, 0, 0)
|
109 |
|
|
yy(0, 104, 0, 0, 0, 0, 0)
|
110 |
|
|
yy(0, 105, 0, 0, 0, 0, 0)
|
111 |
|
|
yy(0, 106, 0, 0, 0, 0, 0)
|
112 |
|
|
yy(0, 107, 0, 0, 0, 0, 0)
|
113 |
|
|
yy(0, 108, 0, 0, 0, 0, 0)
|
114 |
|
|
yy(0, 109, 0, 0, 0, 0, 0)
|
115 |
|
|
yy(0, 110, 0, 0, 0, 0, 0)
|
116 |
|
|
yy(0, 111, 0, 0, 0, 0, 0)
|
117 |
|
|
yy(0, 112, 0, 0, 0, 0, 0)
|
118 |
|
|
yy(0, 113, 0, 0, 0, 0, 0)
|
119 |
|
|
yy(0, 114, 0, 0, 0, 0, 0)
|
120 |
|
|
yy(0, 115, 0, 0, 0, 0, 0)
|
121 |
|
|
yy(0, 116, 0, 0, 0, 0, 0)
|
122 |
|
|
yy(0, 117, 0, 0, 0, 0, 0)
|
123 |
|
|
yy(0, 118, 0, 0, 0, 0, 0)
|
124 |
|
|
yy(0, 119, 0, 0, 0, 0, 0)
|
125 |
|
|
yy(0, 120, 0, 0, 0, 0, 0)
|
126 |
|
|
yy(0, 121, 0, 0, 0, 0, 0)
|
127 |
|
|
yy(0, 122, 0, 0, 0, 0, 0)
|
128 |
|
|
yy(0, 123, 0, 0, 0, IF, "{")
|
129 |
|
|
yy(0, 124, 6, BOR, bittree,'|', "|")
|
130 |
|
|
yy(0, 125, 0, 0, 0, '}', "}")
|
131 |
|
|
yy(0, 126, 0, BCOM, 0, ID, "~")
|
132 |
|
|
xx(EOI, 127, 0, 0, 0, EOI, "end of input")
|
133 |
|
|
#undef xx
|
134 |
|
|
#undef yy
|