0
|
1 module dmd.VoidInitializer;
|
|
2
|
|
3 import dmd.Initializer;
|
|
4 import dmd.Type;
|
|
5 import dmd.Loc;
|
|
6 import dmd.Scope;
|
|
7 import dmd.Expression;
|
|
8 import dmd.OutBuffer;
|
|
9 import dmd.HdrGenState;
|
|
10
|
|
11 import dmd.backend.dt_t;
|
|
12
|
|
13 class VoidInitializer : Initializer
|
|
14 {
|
|
15 Type type = null; // type that this will initialize to
|
|
16
|
|
17 this(Loc loc)
|
|
18 {
|
|
19 super(loc);
|
|
20 }
|
|
21
|
|
22 Initializer syntaxCopy()
|
|
23 {
|
51
|
24 return new VoidInitializer(loc);
|
0
|
25 }
|
|
26
|
|
27 Initializer semantic(Scope sc, Type t)
|
|
28 {
|
|
29 //printf("VoidInitializer.semantic(t = %p)\n", t);
|
|
30 type = t;
|
|
31 return this;
|
|
32 }
|
|
33
|
|
34 Expression toExpression()
|
|
35 {
|
|
36 assert(false);
|
|
37 }
|
|
38
|
|
39 void toCBuffer(OutBuffer buf, HdrGenState* hgs)
|
|
40 {
|
|
41 assert(false);
|
|
42 }
|
|
43
|
|
44 dt_t* toDt()
|
|
45 {
|
|
46 assert(false);
|
|
47 }
|
|
48
|
|
49 VoidInitializer isVoidInitializer() { return this; }
|
|
50 } |