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