1 using System;
2
3
4
5 namespace ParserFileKeywords
6 {
7 internal class Keywords
8 {
9 static Keywords() :
10 instance(new Keywords())
11 {
12 }
13 public static Keywords& Instance()
14 {
15 return *instance;
16 }
17 public System.Lex.KeywordMap* GetKeywordMap()
18 {
19 return keywordMap.Get();
20 }
21 private Keywords()
22 {
23 System.Lex.Keyword keyword0(u"parser", ParserFileTokens.PARSER);
24 keywordList.Add(keyword0);
25 System.Lex.Keyword keyword1(u"main", ParserFileTokens.MAIN);
26 keywordList.Add(keyword1);
27 System.Lex.Keyword keyword2(u"uselexer", ParserFileTokens.USELEXER);
28 keywordList.Add(keyword2);
29 System.Lex.Keyword keyword3(u"ruleinfo", ParserFileTokens.RULEINFO);
30 keywordList.Add(keyword3);
31 System.Lex.Keyword keyword4(u"empty", ParserFileTokens.EMPTY);
32 keywordList.Add(keyword4);
33 System.Lex.Keyword keyword5(u"any", ParserFileTokens.ANY);
34 keywordList.Add(keyword5);
35 System.Lex.Keyword keyword6(u"var", ParserFileTokens.VAR);
36 keywordList.Add(keyword6);
37 System.Lex.Keyword keyword7(u"assert", ParserFileTokens.ASSERT);
38 keywordList.Add(keyword7);
39 System.Lex.Keyword keyword8(u"elif", ParserFileTokens.ELIF);
40 keywordList.Add(keyword8);
41 System.Lex.Keyword keyword9(u"endif", ParserFileTokens.ENDIF);
42 keywordList.Add(keyword9);
43 System.Lex.Keyword keyword10(u"bool", ParserFileTokens.BOOL);
44 keywordList.Add(keyword10);
45 System.Lex.Keyword keyword11(u"true", ParserFileTokens.TRUE);
46 keywordList.Add(keyword11);
47 System.Lex.Keyword keyword12(u"false", ParserFileTokens.FALSE);
48 keywordList.Add(keyword12);
49 System.Lex.Keyword keyword13(u"sbyte", ParserFileTokens.SBYTE);
50 keywordList.Add(keyword13);
51 System.Lex.Keyword keyword14(u"byte", ParserFileTokens.BYTE);
52 keywordList.Add(keyword14);
53 System.Lex.Keyword keyword15(u"short", ParserFileTokens.SHORT);
54 keywordList.Add(keyword15);
55 System.Lex.Keyword keyword16(u"ushort", ParserFileTokens.USHORT);
56 keywordList.Add(keyword16);
57 System.Lex.Keyword keyword17(u"int", ParserFileTokens.INT);
58 keywordList.Add(keyword17);
59 System.Lex.Keyword keyword18(u"uint", ParserFileTokens.UINT);
60 keywordList.Add(keyword18);
61 System.Lex.Keyword keyword19(u"long", ParserFileTokens.LONG);
62 keywordList.Add(keyword19);
63 System.Lex.Keyword keyword20(u"ulong", ParserFileTokens.ULONG);
64 keywordList.Add(keyword20);
65 System.Lex.Keyword keyword21(u"float", ParserFileTokens.FLOAT);
66 keywordList.Add(keyword21);
67 System.Lex.Keyword keyword22(u"double", ParserFileTokens.DOUBLE);
68 keywordList.Add(keyword22);
69 System.Lex.Keyword keyword23(u"char", ParserFileTokens.CHAR);
70 keywordList.Add(keyword23);
71 System.Lex.Keyword keyword24(u"wchar", ParserFileTokens.WCHAR);
72 keywordList.Add(keyword24);
73 System.Lex.Keyword keyword25(u"uchar", ParserFileTokens.UCHAR);
74 keywordList.Add(keyword25);
75 System.Lex.Keyword keyword26(u"void", ParserFileTokens.VOID);
76 keywordList.Add(keyword26);
77 System.Lex.Keyword keyword27(u"enum", ParserFileTokens.ENUM);
78 keywordList.Add(keyword27);
79 System.Lex.Keyword keyword28(u"cast", ParserFileTokens.CAST);
80 keywordList.Add(keyword28);
81 System.Lex.Keyword keyword29(u"interface", ParserFileTokens.INTERFACE);
82 keywordList.Add(keyword29);
83 System.Lex.Keyword keyword30(u"namespace", ParserFileTokens.NAMESPACE);
84 keywordList.Add(keyword30);
85 System.Lex.Keyword keyword31(u"using", ParserFileTokens.USING);
86 keywordList.Add(keyword31);
87 System.Lex.Keyword keyword32(u"static", ParserFileTokens.STATIC);
88 keywordList.Add(keyword32);
89 System.Lex.Keyword keyword33(u"extern", ParserFileTokens.EXTERN);
90 keywordList.Add(keyword33);
91 System.Lex.Keyword keyword34(u"as", ParserFileTokens.AS);
92 keywordList.Add(keyword34);
93 System.Lex.Keyword keyword35(u"is", ParserFileTokens.IS);
94 keywordList.Add(keyword35);
95 System.Lex.Keyword keyword36(u"explicit", ParserFileTokens.EXPLICIT);
96 keywordList.Add(keyword36);
97 System.Lex.Keyword keyword37(u"delegate", ParserFileTokens.DELEGATE);
98 keywordList.Add(keyword37);
99 System.Lex.Keyword keyword38(u"inline", ParserFileTokens.INLINE);
100 keywordList.Add(keyword38);
101 System.Lex.Keyword keyword39(u"cdecl", ParserFileTokens.CDECL);
102 keywordList.Add(keyword39);
103 System.Lex.Keyword keyword40(u"nothrow", ParserFileTokens.NOTHROW);
104 keywordList.Add(keyword40);
105 System.Lex.Keyword keyword41(u"public", ParserFileTokens.PUBLIC);
106 keywordList.Add(keyword41);
107 System.Lex.Keyword keyword42(u"protected", ParserFileTokens.PROTECTED);
108 keywordList.Add(keyword42);
109 System.Lex.Keyword keyword43(u"private", ParserFileTokens.PRIVATE);
110 keywordList.Add(keyword43);
111 System.Lex.Keyword keyword44(u"internal", ParserFileTokens.INTERNAL);
112 keywordList.Add(keyword44);
113 System.Lex.Keyword keyword45(u"virtual", ParserFileTokens.VIRTUAL);
114 keywordList.Add(keyword45);
115 System.Lex.Keyword keyword46(u"abstract", ParserFileTokens.ABSTRACT);
116 keywordList.Add(keyword46);
117 System.Lex.Keyword keyword47(u"override", ParserFileTokens.OVERRIDE);
118 keywordList.Add(keyword47);
119 System.Lex.Keyword keyword48(u"suppress", ParserFileTokens.SUPPRESS);
120 keywordList.Add(keyword48);
121 System.Lex.Keyword keyword49(u"operator", ParserFileTokens.OPERATOR);
122 keywordList.Add(keyword49);
123 System.Lex.Keyword keyword50(u"class", ParserFileTokens.CLASS);
124 keywordList.Add(keyword50);
125 System.Lex.Keyword keyword51(u"return", ParserFileTokens.RETURN);
126 keywordList.Add(keyword51);
127 System.Lex.Keyword keyword52(u"if", ParserFileTokens.IF);
128 keywordList.Add(keyword52);
129 System.Lex.Keyword keyword53(u"else", ParserFileTokens.ELSE);
130 keywordList.Add(keyword53);
131 System.Lex.Keyword keyword54(u"switch", ParserFileTokens.SWITCH);
132 keywordList.Add(keyword54);
133 System.Lex.Keyword keyword55(u"case", ParserFileTokens.CASE);
134 keywordList.Add(keyword55);
135 System.Lex.Keyword keyword56(u"default", ParserFileTokens.DEFAULT);
136 keywordList.Add(keyword56);
137 System.Lex.Keyword keyword57(u"while", ParserFileTokens.WHILE);
138 keywordList.Add(keyword57);
139 System.Lex.Keyword keyword58(u"do", ParserFileTokens.DO);
140 keywordList.Add(keyword58);
141 System.Lex.Keyword keyword59(u"for", ParserFileTokens.FOR);
142 keywordList.Add(keyword59);
143 System.Lex.Keyword keyword60(u"break", ParserFileTokens.BREAK);
144 keywordList.Add(keyword60);
145 System.Lex.Keyword keyword61(u"continue", ParserFileTokens.CONTINUE);
146 keywordList.Add(keyword61);
147 System.Lex.Keyword keyword62(u"goto", ParserFileTokens.GOTO);
148 keywordList.Add(keyword62);
149 System.Lex.Keyword keyword63(u"typedef", ParserFileTokens.TYPEDEF);
150 keywordList.Add(keyword63);
151 System.Lex.Keyword keyword64(u"typename", ParserFileTokens.TYPENAME);
152 keywordList.Add(keyword64);
153 System.Lex.Keyword keyword65(u"typeid", ParserFileTokens.TYPEID);
154 keywordList.Add(keyword65);
155 System.Lex.Keyword keyword66(u"const", ParserFileTokens.CONST);
156 keywordList.Add(keyword66);
157 System.Lex.Keyword keyword67(u"constexpr", ParserFileTokens.CONSTEXPR);
158 keywordList.Add(keyword67);
159 System.Lex.Keyword keyword68(u"null", ParserFileTokens.NULLLIT);
160 keywordList.Add(keyword68);
161 System.Lex.Keyword keyword69(u"this", ParserFileTokens.THIS);
162 keywordList.Add(keyword69);
163 System.Lex.Keyword keyword70(u"base", ParserFileTokens.BASE);
164 keywordList.Add(keyword70);
165 System.Lex.Keyword keyword71(u"construct", ParserFileTokens.CONSTRUCT);
166 keywordList.Add(keyword71);
167 System.Lex.Keyword keyword72(u"destroy", ParserFileTokens.DESTROY);
168 keywordList.Add(keyword72);
169 System.Lex.Keyword keyword73(u"new", ParserFileTokens.NEW);
170 keywordList.Add(keyword73);
171 System.Lex.Keyword keyword74(u"delete", ParserFileTokens.DELETE);
172 keywordList.Add(keyword74);
173 System.Lex.Keyword keyword75(u"sizeof", ParserFileTokens.SIZEOF);
174 keywordList.Add(keyword75);
175 System.Lex.Keyword keyword76(u"try", ParserFileTokens.TRY);
176 keywordList.Add(keyword76);
177 System.Lex.Keyword keyword77(u"catch", ParserFileTokens.CATCH);
178 keywordList.Add(keyword77);
179 System.Lex.Keyword keyword78(u"throw", ParserFileTokens.THROW);
180 keywordList.Add(keyword78);
181 System.Lex.Keyword keyword79(u"concept", ParserFileTokens.CONCEPT);
182 keywordList.Add(keyword79);
183 System.Lex.Keyword keyword80(u"where", ParserFileTokens.WHERE);
184 keywordList.Add(keyword80);
185 System.Lex.Keyword keyword81(u"axiom", ParserFileTokens.AXIOM);
186 keywordList.Add(keyword81);
187 System.Lex.Keyword keyword82(u"and", ParserFileTokens.AND);
188 keywordList.Add(keyword82);
189 System.Lex.Keyword keyword83(u"or", ParserFileTokens.OR);
190 keywordList.Add(keyword83);
191 System.Lex.Keyword keyword84(u"unit_test", ParserFileTokens.UNIT_TEST);
192 keywordList.Add(keyword84);
193 System.Lex.Keyword nullKeyword(null, -1);
194 keywordList.Add(nullKeyword);
195 keywordMap.Reset(new System.Lex.KeywordMap(keywordList.CBegin().Ptr()));
196 }
197 private static System.UniquePtr<Keywords> instance;
198 private System.Collections.List<System.Lex.Keyword> keywordList;
199 private System.UniquePtr<System.Lex.KeywordMap> keywordMap;
200 }
201
202 public System.Lex.KeywordMap* GetKeywordMap()
203 {
204 return Keywords.Instance().GetKeywordMap();
205 }
206 }