Mercurial > projects > dil
annotate trunk/src/dil/TokensEnum.d @ 552:3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
author | Aziz K?ksal <aziz.koeksal@gmail.com> |
---|---|
date | Thu, 20 Dec 2007 23:26:43 +0100 |
parents | d7050f2a4814 |
children |
rev | line source |
---|---|
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
1 /++ |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
2 Author: Aziz Köksal |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
3 License: GPL3 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
4 +/ |
502
4e14cd1b24da
Refactored code and added modules related to tabulated Identifiers.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
500
diff
changeset
|
5 module dil.TokensEnum; |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
6 import common; |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
7 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
8 enum TOK : ushort |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
9 { |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
10 Invalid, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
11 |
552
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
12 Illegal, |
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
13 Comment, |
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
14 Shebang, |
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
15 HashLine, |
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
16 Filespec, |
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
17 Newline, |
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
18 Empty, |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
19 |
552
3bc7801c207e
Refactored the way how tokens are flagged as whitespace.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
544
diff
changeset
|
20 Identifier, |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
21 String, |
507
996041463028
Removed TOK.WCharLiteral and TOK.DCharLiteral.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
502
diff
changeset
|
22 CharLiteral, |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
23 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
24 // Special tokens |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
25 FILE, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
26 LINE, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
27 DATE, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
28 TIME, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
29 TIMESTAMP, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
30 VENDOR, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
31 VERSION, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
32 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
33 // Number literals |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
34 Int32, Int64, Uint32, Uint64, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
35 // Floating point number scanner relies on this order. (FloatXY + 3 == ImaginaryXY) |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
36 Float32, Float64, Float80, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
37 Imaginary32, Imaginary64, Imaginary80, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
38 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
39 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
40 // Brackets |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
41 LParen, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
42 RParen, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
43 LBracket, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
44 RBracket, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
45 LBrace, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
46 RBrace, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
47 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
48 Dot, Slice, Ellipses, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
49 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
50 // Floating point number operators |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
51 Unordered, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
52 UorE, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
53 UorG, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
54 UorGorE, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
55 UorL, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
56 UorLorE, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
57 LorEorG, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
58 LorG, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
59 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
60 // Normal operators |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
61 Assign, Equal, NotEqual, Not, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
62 LessEqual, Less, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
63 GreaterEqual, Greater, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
64 LShiftAssign, LShift, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
65 RShiftAssign,RShift, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
66 URShiftAssign, URShift, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
67 OrAssign, OrLogical, OrBinary, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
68 AndAssign, AndLogical, AndBinary, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
69 PlusAssign, PlusPlus, Plus, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
70 MinusAssign, MinusMinus, Minus, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
71 DivAssign, Div, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
72 MulAssign, Mul, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
73 ModAssign, Mod, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
74 XorAssign, Xor, |
544
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
75 CatAssign, |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
76 Tilde, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
77 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
78 Colon, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
79 Semicolon, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
80 Question, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
81 Comma, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
82 Dollar, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
83 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
84 /* Keywords: |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
85 NB.: Token.isKeyword() depends on this list being contiguous. |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
86 */ |
508
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
87 Abstract, Alias, Align, Asm, Assert, Auto, Body, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
88 Break, Case, Cast, Catch, |
520
f203c5248d0b
Added 'compile' command.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
508
diff
changeset
|
89 Class, Const, Continue, |
508
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
90 Debug, Default, Delegate, Delete, Deprecated, Do, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
91 Else, Enum, Export, Extern, False, Final, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
92 Finally, For, Foreach, Foreach_reverse, Function, Goto, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
93 If, Import, In, Inout, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
94 Interface, Invariant, Is, Lazy, Macro/+D2.0+/, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
95 Mixin, Module, New, Null, Out, Override, Package, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
96 Pragma, Private, Protected, Public, Ref/+D2.0+/, Return, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
97 Scope, Static, Struct, Super, Switch, Synchronized, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
98 Template, This, Throw, Traits/+D2.0+/, True, Try, Typedef, Typeid, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
99 Typeof, Union, Unittest, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
100 Version, Volatile, While, With, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
101 // Integral types. |
525
a3f66502ea64
Added struct Types with pre-defined types.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
520
diff
changeset
|
102 Char, Wchar, Dchar, Bool, |
508
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
103 Byte, Ubyte, Short, Ushort, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
104 Int, Uint, Long, Ulong, |
525
a3f66502ea64
Added struct Types with pre-defined types.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
520
diff
changeset
|
105 Cent, Ucent, |
508
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
106 Float, Double, Real, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
107 Ifloat, Idouble, Ireal, |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
108 Cfloat, Cdouble, Creal, Void, |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
109 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
110 HEAD, // start of linked list |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
111 EOF, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
112 MAX |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
113 } |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
114 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
115 alias TOK.Abstract KeywordsBegin; |
508
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
116 alias TOK.Void KeywordsEnd; |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
117 alias TOK.Char IntegralTypeBegin; |
943ecc9c133a
Added isIntegralType() to Token and refactored code.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
507
diff
changeset
|
118 alias TOK.Void IntegralTypeEnd; |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
119 alias TOK.FILE SpecialTokensBegin; |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
120 alias TOK.VERSION SpecialTokensEnd; |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
121 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
122 /// A table mapping each TOK to a string. |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
123 const string[] tokToString = [ |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
124 "Invalid", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
125 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
126 "Illegal", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
127 "Comment", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
128 "#! /shebang/", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
129 "#line", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
130 `"filespec"`, |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
131 "Newline", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
132 "Empty", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
133 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
134 "Identifier", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
135 "String", |
507
996041463028
Removed TOK.WCharLiteral and TOK.DCharLiteral.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
502
diff
changeset
|
136 "CharLiteral", |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
137 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
138 "__FILE__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
139 "__LINE__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
140 "__DATE__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
141 "__TIME__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
142 "__TIMESTAMP__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
143 "__VENDOR__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
144 "__VERSION__", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
145 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
146 "Int32", "Int64", "Uint32", "Uint64", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
147 "Float32", "Float64", "Float80", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
148 "Imaginary32", "Imaginary64", "Imaginary80", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
149 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
150 "(", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
151 ")", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
152 "[", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
153 "]", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
154 "{", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
155 "}", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
156 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
157 ".", "..", "...", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
158 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
159 "!<>=", // Unordered |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
160 "!<>", // UorE |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
161 "!<=", // UorG |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
162 "!<", // UorGorE |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
163 "!>=", // UorL |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
164 "!>", // UorLorE |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
165 "<>=", // LorEorG |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
166 "<>", // LorG |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
167 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
168 "=", "==", "!=", "!", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
169 "<=", "<", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
170 ">=", ">", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
171 "<<=", "<<", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
172 ">>=",">>", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
173 ">>>=", ">>>", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
174 "|=", "||", "|", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
175 "&=", "&&", "&", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
176 "+=", "++", "+", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
177 "-=", "--", "-", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
178 "/=", "/", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
179 "*=", "*", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
180 "%=", "%", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
181 "^=", "^", |
544
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
182 "~=", |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
183 "~", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
184 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
185 ":", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
186 ";", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
187 "?", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
188 ",", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
189 "$", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
190 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
191 "abstract","alias","align","asm","assert","auto","body", |
544
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
192 "break","case","cast","catch", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
193 "class","const","continue", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
194 "debug","default","delegate","delete","deprecated","do", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
195 "else","enum","export","extern","false","final", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
196 "finally","for","foreach","foreach_reverse","function","goto", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
197 "if","import","in","inout", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
198 "interface","invariant","is","lazy","macro", |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
199 "mixin","module","new","null","out","override","package", |
544
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
200 "pragma","private","protected","public","ref","return", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
201 "scope","static","struct","super","switch","synchronized", |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
202 "template","this","throw","__traits","true","try","typedef","typeid", |
544
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
203 "typeof","union","unittest", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
204 "version","volatile","while","with", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
205 // Integral types. |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
206 "char", "wchar", "dchar", "bool", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
207 "byte", "ubyte", "short", "ushort", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
208 "int", "uint", "long", "ulong", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
209 "cent", "ucent", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
210 "float", "double", "real", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
211 "ifloat", "idouble", "ireal", |
d7050f2a4814
Fixed table 'tokToString'.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
525
diff
changeset
|
212 "cfloat", "cdouble", "creal", "void", |
500
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
213 |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
214 "HEAD", |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
215 "EOF" |
41b7f9e439bd
Moved enum TOK to new module dil.TokenIDs.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
diff
changeset
|
216 ]; |
502
4e14cd1b24da
Refactored code and added modules related to tabulated Identifiers.
Aziz K?ksal <aziz.koeksal@gmail.com>
parents:
500
diff
changeset
|
217 static assert(tokToString.length == TOK.EOF+1); |