annotate dmd/Id.d @ 135:af1bebfd96a4 dmd2037

dmd 2.038
author Eldar Insafutdinov <e.insafutdinov@gmail.com>
date Mon, 13 Sep 2010 22:19:42 +0100
parents 60bb0fe4563e
children 96c0fff6897d
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
1 module dmd.Id;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
2
114
e28b18c23469 added a module dmd.common for commonly used stuff
Trass3r
parents: 103
diff changeset
3 import dmd.common;
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
4 import dmd.Identifier;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
5 import dmd.Lexer;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
6
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
7 private string idgen(T...)(T ts)
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
8 {
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
9 string res = "struct Id\n{\n";
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
10
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
11 foreach(entry; ts)
99
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
12 res ~= "\tstatic Identifier " ~ entry.ident ~ ";\n";
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
13
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
14 res ~= "\tstatic void initialize()\n\t{\n";
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
15 string tmp;
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
16 foreach (entry; ts)
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
17 {
99
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
18 if (entry.name_ is null)
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
19 tmp = entry.ident;
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
20 else
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
21 tmp = entry.name_;
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
22 res ~= "\t\t" ~ entry.ident ~ ` = Lexer.idPool("` ~ tmp ~ "\");\n";
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
23 }
99
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
24
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
25 res ~= "\t}\n}";
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
26 return res;
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
27 }
903b95002d4e Id and Macro are quite experimental currently
Trass3r
parents: 73
diff changeset
28
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
29 private struct ID
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
30 {
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
31 string ident; // name to use in DMD source
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
32 string name_; // name in D executable
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
33 }
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
34
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
35 mixin(idgen(
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
36 ID( "IUnknown" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
37 ID( "Object_", "Object" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
38 ID( "object" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
39 ID( "max" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
40 ID( "min" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
41 ID( "This", "this" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
42 ID( "ctor", "__ctor" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
43 ID( "dtor", "__dtor" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
44 ID( "cpctor", "__cpctor" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
45 ID( "_postblit", "__postblit" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
46 ID( "classInvariant", "__invariant" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
47 ID( "unitTest", "__unitTest" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
48 ID( "require", "__require" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
49 ID( "ensure", "__ensure" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
50 ID( "init_", "init" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
51 ID( "size" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
52 ID( "__sizeof", "sizeof" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
53 ID( "alignof_", "alignof" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
54 ID( "mangleof_", "mangleof" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
55 ID( "stringof_", "stringof" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
56 ID( "tupleof_", "tupleof" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
57 ID( "length" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
58 ID( "remove" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
59 ID( "ptr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
60 ID( "funcptr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
61 ID( "dollar", "__dollar" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
62 ID( "offset" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
63 ID( "offsetof" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
64 ID( "ModuleInfo" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
65 ID( "ClassInfo" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
66 ID( "classinfo_", "classinfo" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
67 ID( "typeinfo_", "typeinfo" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
68 ID( "outer" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
69 ID( "Exception" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
70 ID( "AssociativeArray" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
71 ID( "Throwable" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
72 ID( "withSym", "__withSym" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
73 ID( "result", "__result" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
74 ID( "returnLabel", "__returnLabel" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
75 ID( "delegate_", "delegate" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
76 ID( "line" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
77 ID( "empty", "" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
78 ID( "p" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
79 ID( "coverage", "__coverage" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
80 ID( "__vptr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
81 ID( "__monitor" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
82
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
83 ID( "TypeInfo" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
84 ID( "TypeInfo_Class" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
85 ID( "TypeInfo_Interface" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
86 ID( "TypeInfo_Struct" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
87 ID( "TypeInfo_Enum" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
88 ID( "TypeInfo_Typedef" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
89 ID( "TypeInfo_Pointer" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
90 ID( "TypeInfo_Array" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
91 ID( "TypeInfo_StaticArray" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
92 ID( "TypeInfo_AssociativeArray" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
93 ID( "TypeInfo_Function" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
94 ID( "TypeInfo_Delegate" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
95 ID( "TypeInfo_Tuple" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
96 ID( "TypeInfo_Const" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
97 ID( "TypeInfo_Invariant" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
98 ID( "TypeInfo_Shared" ),
135
af1bebfd96a4 dmd 2.038
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 130
diff changeset
99 ID( "TypeInfo_Wild", "TypeInfo_Inout" ),
af1bebfd96a4 dmd 2.038
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 130
diff changeset
100
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
101 ID( "elements" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
102 ID( "_arguments_typeinfo" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
103 ID( "_arguments" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
104 ID( "_argptr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
105 ID( "_match" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
106 ID( "destroy" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
107
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
108 ID( "LINE", "__LINE__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
109 ID( "FILE", "__FILE__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
110 ID( "DATE", "__DATE__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
111 ID( "TIME", "__TIME__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
112 ID( "TIMESTAMP", "__TIMESTAMP__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
113 ID( "VENDOR", "__VENDOR__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
114 ID( "VERSIONX", "__VERSION__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
115 ID( "EOFX", "__EOF__" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
116
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
117 ID( "nan" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
118 ID( "infinity" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
119 ID( "dig" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
120 ID( "epsilon" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
121 ID( "mant_dig" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
122 ID( "max_10_exp" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
123 ID( "max_exp" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
124 ID( "min_10_exp" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
125 ID( "min_exp" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
126 ID( "min_normal" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
127 ID( "re" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
128 ID( "im" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
129
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
130 ID( "C" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
131 ID( "D" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
132 ID( "Windows" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
133 ID( "Pascal" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
134 ID( "System" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
135
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
136 ID( "exit" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
137 ID( "success" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
138 ID( "failure" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
139
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
140 ID( "keys" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
141 ID( "values" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
142 ID( "rehash" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
143
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
144 ID( "sort" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
145 ID( "reverse" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
146 ID( "dup" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
147 ID( "idup" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
148
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
149 ID( "property" ),
130
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
150 ID( "safe" ),
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
151 ID( "trusted" ),
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
152 ID( "system" ),
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
153
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
154 // For inline assembler
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
155 ID( "___out", "out" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
156 ID( "___in", "in" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
157 ID( "__int", "int" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
158 ID( "__dollar", "$" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
159 ID( "__LOCAL_SIZE" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
160
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
161 // For operator overloads
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
162 ID( "uadd", "opPos" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
163 ID( "neg", "opNeg" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
164 ID( "com", "opCom" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
165 ID( "add", "opAdd" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
166 ID( "add_r", "opAdd_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
167 ID( "sub", "opSub" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
168 ID( "sub_r", "opSub_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
169 ID( "mul", "opMul" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
170 ID( "mul_r", "opMul_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
171 ID( "div", "opDiv" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
172 ID( "div_r", "opDiv_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
173 ID( "mod", "opMod" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
174 ID( "mod_r", "opMod_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
175 ID( "eq", "opEquals" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
176 ID( "cmp", "opCmp" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
177 ID( "iand", "opAnd" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
178 ID( "iand_r", "opAnd_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
179 ID( "ior", "opOr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
180 ID( "ior_r", "opOr_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
181 ID( "ixor", "opXor" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
182 ID( "ixor_r", "opXor_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
183 ID( "shl", "opShl" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
184 ID( "shl_r", "opShl_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
185 ID( "shr", "opShr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
186 ID( "shr_r", "opShr_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
187 ID( "ushr", "opUShr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
188 ID( "ushr_r", "opUShr_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
189 ID( "cat", "opCat" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
190 ID( "cat_r", "opCat_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
191 ID( "assign", "opAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
192 ID( "addass", "opAddAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
193 ID( "subass", "opSubAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
194 ID( "mulass", "opMulAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
195 ID( "divass", "opDivAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
196 ID( "modass", "opModAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
197 ID( "andass", "opAndAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
198 ID( "orass", "opOrAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
199 ID( "xorass", "opXorAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
200 ID( "shlass", "opShlAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
201 ID( "shrass", "opShrAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
202 ID( "ushrass", "opUShrAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
203 ID( "catass", "opCatAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
204 ID( "postinc", "opPostInc" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
205 ID( "postdec", "opPostDec" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
206 ID( "index", "opIndex" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
207 ID( "indexass", "opIndexAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
208 ID( "slice", "opSlice" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
209 ID( "sliceass", "opSliceAssign" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
210 ID( "call", "opCall" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
211 ID( "cast_", "opCast" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
212 ID( "match", "opMatch" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
213 ID( "next", "opNext" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
214 ID( "opIn" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
215 ID( "opIn_r" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
216 ID( "opStar" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
217 ID( "opDot" ),
130
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
218 ID( "opDispatch" ),
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
219 ID( "opImplicitCast" ),
130
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
220 ID( "pow", "opPow" ),
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
221 ID( "pow_r", "opPow_r" ),
135
af1bebfd96a4 dmd 2.038
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 130
diff changeset
222 ID( "powass", "opPowAssign" ),
130
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
223
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
224 ID( "classNew", "new" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
225 ID( "classDelete", "delete" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
226
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
227 // For foreach
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
228 ID( "apply", "opApply" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
229 ID( "applyReverse", "opApplyReverse" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
230
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
231 // #if 1
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
232 ID( "Fempty", "empty" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
233 ID( "Fhead", "front" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
234 ID( "Ftoe", "back" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
235 ID( "Fnext", "popFront" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
236 ID( "Fretreat", "popBack" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
237 /*#else
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
238 ID( "Fempty", "empty" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
239 ID( "Fhead", "head" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
240 ID( "Ftoe", "toe" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
241 ID( "Fnext", "next" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
242 ID( "Fretreat", "retreat" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
243 #endif*/
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
244
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
245 ID( "adDup", "_adDupT" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
246 ID( "adReverse", "_adReverse" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
247
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
248 // For internal functions
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
249 ID( "aaLen", "_aaLen" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
250 ID( "aaKeys", "_aaKeys" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
251 ID( "aaValues", "_aaValues" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
252 ID( "aaRehash", "_aaRehash" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
253 ID( "monitorenter", "_d_monitorenter" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
254 ID( "monitorexit", "_d_monitorexit" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
255 ID( "criticalenter", "_d_criticalenter" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
256 ID( "criticalexit", "_d_criticalexit" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
257
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
258 // For pragma's
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
259 ID( "GNU_asm" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
260 ID( "lib" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
261 ID( "msg" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
262 ID( "startaddress" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
263
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
264 // For special functions
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
265 ID( "tohash", "toHash" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
266 ID( "tostring", "toString" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
267 ID( "getmembers", "getMembers" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
268
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
269 // Special functions
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
270 ID( "alloca" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
271 ID( "main" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
272 ID( "WinMain" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
273 ID( "DllMain" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
274 ID( "tls_get_addr", "___tls_get_addr" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
275
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
276 // Builtin functions
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
277 ID( "std" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
278 ID( "math" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
279 ID( "sin" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
280 ID( "cos" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
281 ID( "tan" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
282 ID( "_sqrt", "sqrt" ),
130
60bb0fe4563e dmdfe 2.037 first main iteration
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 114
diff changeset
283 ID( "_pow", "pow" ),
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
284 ID( "fabs" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
285
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
286 // Traits
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
287 ID( "isAbstractClass" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
288 ID( "isArithmetic" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
289 ID( "isAssociativeArray" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
290 ID( "isFinalClass" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
291 ID( "isFloating" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
292 ID( "isIntegral" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
293 ID( "isScalar" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
294 ID( "isStaticArray" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
295 ID( "isUnsigned" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
296 ID( "isVirtualFunction" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
297 ID( "isAbstractFunction" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
298 ID( "isFinalFunction" ),
135
af1bebfd96a4 dmd 2.038
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 130
diff changeset
299 ID( "isRef" ),
af1bebfd96a4 dmd 2.038
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 130
diff changeset
300 ID( "isOut" ),
af1bebfd96a4 dmd 2.038
Eldar Insafutdinov <e.insafutdinov@gmail.com>
parents: 130
diff changeset
301 ID( "isLazy" ),
103
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
302 ID( "hasMember" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
303 ID( "getMember" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
304 ID( "getVirtualFunctions" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
305 ID( "classInstanceSize" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
306 ID( "allMembers" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
307 ID( "derivedMembers" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
308 ID( "isSame" ),
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
309 ID( "compiles" )
e6090d1aea7c fixed dmd.Id + some small fixups
Trass3r
parents: 99
diff changeset
310 ));