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 }