Mercurial > projects > ddmd
comparison dmd/backend/template_t.d @ 0:10317f0c89a5
Initial commit
author | korDen |
---|---|
date | Sat, 24 Oct 2009 08:42:06 +0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:10317f0c89a5 |
---|---|
1 module dmd.backend.template_t; | |
2 | |
3 /*********************************** | |
4 * Special information for class templates. | |
5 */ | |
6 | |
7 struct template_t | |
8 { | |
9 /+ | |
10 symlist_t TMinstances; // list of Symbols that are instances | |
11 param_t *TMptpl; // template-parameter-list | |
12 struct token_t *TMbody; // tokens making up class body | |
13 unsigned TMsequence; // sequence number at point of definition | |
14 list_t TMmemberfuncs; // templates for member functions (list of TMF's) | |
15 list_t TMexplicit; // list of TME's: primary member template explicit specializations | |
16 list_t TMnestedexplicit; // list of TMNE's: primary member template nested explicit specializations | |
17 Symbol *TMnext; // threaded list of template classes headed | |
18 // up by template_class_list | |
19 enum_TK TMtk; // TKstruct, TKclass or TKunion | |
20 int TMflags; // STRxxx flags | |
21 | |
22 symbol *TMprimary; // primary class template | |
23 symbol *TMpartial; // next class template partial specialization | |
24 param_t *TMptal; // template-argument-list for partial specialization | |
25 // (NULL for primary class template) | |
26 list_t TMfriends; // list of Classsym's for which any instantiated | |
27 // classes of this template will be friends of | |
28 list_t TMnestedfriends; // list of TMNF's | |
29 int TMflags2; // !=0 means dummy template created by template_createargtab() | |
30 +/ | |
31 } |