72
|
1 module dmd.TemplateExp;
|
|
2
|
114
|
3 import dmd.common;
|
72
|
4 import dmd.Expression;
|
|
5 import dmd.OutBuffer;
|
|
6 import dmd.Loc;
|
|
7 import dmd.HdrGenState;
|
|
8 import dmd.TemplateDeclaration;
|
|
9 import dmd.TOK;
|
|
10
|
0
|
11 class TemplateExp : Expression
|
|
12 {
|
|
13 TemplateDeclaration td;
|
|
14
|
|
15 this(Loc loc, TemplateDeclaration td)
|
72
|
16 {
|
0
|
17 super(loc, TOK.TOKtemplate, TemplateExp.sizeof);
|
|
18 //printf("TemplateExp(): %s\n", td.toChars());
|
|
19 this.td = td;
|
|
20 }
|
|
21
|
72
|
22 override void rvalue()
|
0
|
23 {
|
|
24 error("template %s has no value", toChars());
|
|
25 }
|
|
26
|
72
|
27 override void toCBuffer(OutBuffer buf, HdrGenState* hgs)
|
0
|
28 {
|
|
29 buf.writestring(td.toChars());
|
|
30 }
|
|
31 }
|
|
32
|