TOKEN_KINDs macro swappable with codegen/gen_src.cpp

This commit is contained in:
2024-05-05 01:46:32 -04:00
parent f727f3ccb1
commit a33492da24
6 changed files with 217 additions and 18 deletions
+126
View File
@@ -0,0 +1,126 @@
Invalid, "Invalid"
EOF, "EOF"
Comment, "Comment"
_LiteralBegin, " "
Ident, "identifier"
Integer, "integer"
Float, "float"
Imag, "imaginary"
Rune, "rune"
String, "string"
_LiteralEnd, " "
_OperatorBegin, " "
Eq, "="
Not, "!"
Hash, "#"
At, "@"
Dollar, "$"
Pointer, "^"
Question, "?"
Add, "+"
Sub, "-"
Mul, "*"
Quo, "/"
Mod, "%"
ModMod, "%%"
And, "&"
Or, "|"
Xor, "~"
AndNot, "&~"
Shl, "<<"
Shr, ">>"
CmpAnd, "&&"
CmpOr, "||"
_AssignOpBegin, " "
AddEq, "+="
SubEq, "-="
MulEq, "*="
QuoEq, "/="
ModEq, "%="
ModModEq, "%%="
AndEq, "&="
OrEq, "|="
XorEq, "~="
AndNotEq, "&~="
ShlEq, "<<="
ShrEq, ">>="
CmpAndEq, "&&="
CmpOrEq, "||="
_AssignOpEnd, " "
Increment, "++"
Decrement, "--"
ArrowRight, "->"
Uninit, "---"
_ComparisonBegin, " "
CmpEq, "=="
NotEq, "!="
Lt, "<"
Gt, ">"
LtEq, "<="
GtEq, ">="
_ComparisonEnd, " "
OpenParen, "("
CloseParen, ")"
OpenBracket, "["
CloseBracket, "]"
OpenBrace, "{"
CloseBrace, "}"
Colon, ":"
Semicolon, ";"
Period, "."
Comma, ","
Ellipsis, ".."
RangeFull, "..="
RangeHalf, "..<"
BackSlash, "\\"
_OperatorEnd, " "
_KeywordBegin, " "
import, "import"
foreign, "foreign"
package, "package"
typeid, "typeid"
when, "when"
where, "where"
if, "if"
else, "else"
for, "for"
switch, "switch"
in, "in"
not_in, "not_in"
do, "do"
case, "case"
break, "break"
continue, "continue"
fallthrough, "fallthrough"
defer, "defer"
return, "return"
proc, "proc"
struct, "struct"
union, "union"
enum, "enum"
bit_set, "bit_set"
bit_field, "bit_field"
map, "map"
dynamic, "dynamic"
auto_cast, "auto_cast"
cast, "cast"
transmute, "transmute"
distinct, "distinct"
using, "using"
context, "context"
or_else, "or_else"
or_return, "or_return"
or_break, "or_break"
or_continue, "or_continue"
asm, "asm"
matrix, "matrix"
_KeywordEnd, " "
Count, " "
1 Invalid Invalid
2 EOF EOF
3 Comment Comment
4 _LiteralBegin
5 Ident identifier
6 Integer integer
7 Float float
8 Imag imaginary
9 Rune rune
10 String string
11 _LiteralEnd
12 _OperatorBegin
13 Eq =
14 Not !
15 Hash #
16 At @
17 Dollar $
18 Pointer ^
19 Question ?
20 Add +
21 Sub -
22 Mul *
23 Quo /
24 Mod %
25 ModMod %%
26 And &
27 Or |
28 Xor ~
29 AndNot &~
30 Shl <<
31 Shr >>
32 CmpAnd &&
33 CmpOr ||
34 _AssignOpBegin
35 AddEq +=
36 SubEq -=
37 MulEq *=
38 QuoEq /=
39 ModEq %=
40 ModModEq %%=
41 AndEq &=
42 OrEq |=
43 XorEq ~=
44 AndNotEq &~=
45 ShlEq <<=
46 ShrEq >>=
47 CmpAndEq &&=
48 CmpOrEq ||=
49 _AssignOpEnd
50 Increment ++
51 Decrement --
52 ArrowRight ->
53 Uninit ---
54 _ComparisonBegin
55 CmpEq ==
56 NotEq !=
57 Lt <
58 Gt >
59 LtEq <=
60 GtEq >=
61 _ComparisonEnd
62 OpenParen (
63 CloseParen )
64 OpenBracket [
65 CloseBracket ]
66 OpenBrace {
67 CloseBrace }
68 Colon :
69 Semicolon ;
70 Period .
71 Comma ,
72 Ellipsis ..
73 RangeFull ..=
74 RangeHalf ..<
75 BackSlash \\
76 _OperatorEnd
77 _KeywordBegin
78 import import
79 foreign foreign
80 package package
81 typeid typeid
82 when when
83 where where
84 if if
85 else else
86 for for
87 switch switch
88 in in
89 not_in not_in
90 do do
91 case case
92 break break
93 continue continue
94 fallthrough fallthrough
95 defer defer
96 return return
97 proc proc
98 struct struct
99 union union
100 enum enum
101 bit_set bit_set
102 bit_field bit_field
103 map map
104 dynamic dynamic
105 auto_cast auto_cast
106 cast cast
107 transmute transmute
108 distinct distinct
109 using using
110 context context
111 or_else or_else
112 or_return or_return
113 or_break or_break
114 or_continue or_continue
115 asm asm
116 matrix matrix
117 _KeywordEnd
118 Count