1
2
3
4 #include <sngcm/cmlexer/CmajorKeywords.hpp>
5 #include <sngcm/cmlexer/CmajorTokens.hpp>
6
7 namespace CmajorKeywords
8 {
9 using namespace CmajorTokens;
10
11 Keyword keywords[] =
12 {
13 {U"assert", ASSERT}
14 {U"elif", ELIF}
15 {U"endif", ENDIF}
16 {U"bool", BOOL}
17 {U"true", TRUE}
18 {U"false", FALSE}
19 {U"sbyte", SBYTE}
20 {U"byte", BYTE}
21 {U"short", SHORT}
22 {U"ushort", USHORT}
23 {U"int", INT}
24 {U"uint", UINT}
25 {U"long", LONG}
26 {U"ulong", ULONG}
27 {U"float", FLOAT}
28 {U"double", DOUBLE}
29 {U"char", CHAR}
30 {U"wchar", WCHAR}
31 {U"uchar", UCHAR}
32 {U"void", VOID}
33 {U"enum", ENUM}
34 {U"cast", CAST}
35 {U"interface", INTERFACE}
36 {U"namespace", NAMESPACE}
37 {U"using", USING}
38 {U"static", STATIC}
39 {U"extern", EXTERN}
40 {U"as", AS}
41 {U"is", IS}
42 {U"explicit", EXPLICIT}
43 {U"delegate", DELEGATE}
44 {U"inline", INLINE}
45 {U"cdecl", CDECL}
46 {U"nothrow", NOTHROW}
47 {U"public", PUBLIC}
48 {U"protected", PROTECTED}
49 {U"private", PRIVATE}
50 {U"internal", INTERNAL}
51 {U"virtual", VIRTUAL}
52 {U"abstract", ABSTRACT}
53 {U"override", OVERRIDE}
54 {U"suppress", SUPPRESS}
55 {U"winapi", WINAPI}
56 {U"operator", OPERATOR}
57 {U"class", CLASS}
58 {U"return", RETURN}
59 {U"if", IF}
60 {U"else", ELSE}
61 {U"switch", SWITCH}
62 {U"case", CASE}
63 {U"default", DEFAULT}
64 {U"while", WHILE}
65 {U"do", DO}
66 {U"for", FOR}
67 {U"break", BREAK}
68 {U"continue", CONTINUE}
69 {U"goto", GOTO}
70 {U"typedef", TYPEDEF}
71 {U"typename", TYPENAME}
72 {U"typeid", TYPEID}
73 {U"const", CONST}
74 {U"constexpr", CONSTEXPR}
75 {U"null", NULLLIT}
76 {U"this", THIS}
77 {U"base", BASE}
78 {U"construct", CONSTRUCT}
79 {U"destroy", DESTROY}
80 {U"new", NEW}
81 {U"delete", DELETE}
82 {U"sizeof", SIZEOF}
83 {U"try", TRY}
84 {U"catch", CATCH}
85 {U"throw", THROW}
86 {U"concept", CONCEPT}
87 {U"where", WHERE}
88 {U"axiom", AXIOM}
89 {U"and", AND}
90 {U"or", OR}
91 {U"unit_test", UNIT_TEST}
92 {nullptr, -1}
93 };
94
95 KeywordMap keywordMap(keywords);
96
97 KeywordMap* GetKeywordMap()
98 {
99 return &keywordMap;
100 }
101 }