Mercurial > projects > ddmd
comparison dmd/TemplateInstance.d @ 187:b0d41ff5e0df
Added expandability scheme outlined in http://www.dsource.org/forums/viewtopic.php?t=5659&sid=6f2150ff5b0bffcd47512a6a7608d218
author | Abscissa |
---|---|
date | Tue, 07 Jun 2011 23:37:34 -0400 |
parents | e3afd1303184 |
children |
comparison
equal
deleted
inserted
replaced
186:1a0c1126bc46 | 187:b0d41ff5e0df |
---|---|
43 import dmd.OverloadSet; | 43 import dmd.OverloadSet; |
44 import dmd.templates.Util; | 44 import dmd.templates.Util; |
45 | 45 |
46 import dmd.backend.glue; | 46 import dmd.backend.glue; |
47 | 47 |
48 import dmd.DDMDExtensions; | |
49 | |
48 Tuple isTuple(Object o) | 50 Tuple isTuple(Object o) |
49 { | 51 { |
50 //return dynamic_cast<Tuple *>(o); | 52 //return dynamic_cast<Tuple *>(o); |
51 ///if (!o || o.dyncast() != DYNCAST_TUPLE) | 53 ///if (!o || o.dyncast() != DYNCAST_TUPLE) |
52 /// return null; | 54 /// return null; |
161 return false; // nomatch; | 163 return false; // nomatch; |
162 } | 164 } |
163 | 165 |
164 class TemplateInstance : ScopeDsymbol | 166 class TemplateInstance : ScopeDsymbol |
165 { | 167 { |
168 mixin insertMemberExtension!(typeof(this)); | |
169 | |
166 /* Given: | 170 /* Given: |
167 * foo!(args) => | 171 * foo!(args) => |
168 * name = foo | 172 * name = foo |
169 * tiargs = args | 173 * tiargs = args |
170 */ | 174 */ |