Mercurial > projects > ddmd
comparison dmd/AggregateDeclaration.d @ 130:60bb0fe4563e
dmdfe 2.037 first main iteration
author | Eldar Insafutdinov <e.insafutdinov@gmail.com> |
---|---|
date | Thu, 09 Sep 2010 22:51:44 +0100 |
parents | 767a01c2a272 |
children | 206db751bd4c |
comparison
equal
deleted
inserted
replaced
129:010eb8f0e18d | 130:60bb0fe4563e |
---|---|
139 } | 139 } |
140 | 140 |
141 class AggregateDeclaration : ScopeDsymbol | 141 class AggregateDeclaration : ScopeDsymbol |
142 { | 142 { |
143 Type type; | 143 Type type; |
144 uint storage_class; | 144 STC storage_class; |
145 PROT protection = PROT.PROTpublic; | 145 PROT protection = PROT.PROTpublic; |
146 Type handle; // 'this' type | 146 Type handle; // 'this' type |
147 uint structsize; // size of struct | 147 uint structsize; // size of struct |
148 uint alignsize; // size of struct for alignment purposes | 148 uint alignsize; // size of struct for alignment purposes |
149 uint structalign; // struct member alignment in effect | 149 uint structalign; // struct member alignment in effect |
152 uint sizeok; // set when structsize contains valid data | 152 uint sizeok; // set when structsize contains valid data |
153 // 0: no size | 153 // 0: no size |
154 // 1: size is correct | 154 // 1: size is correct |
155 // 2: cannot determine size; fwd referenced | 155 // 2: cannot determine size; fwd referenced |
156 bool isdeprecated; // true if deprecated | 156 bool isdeprecated; // true if deprecated |
157 | 157 |
158 version (DMDV2) { | |
158 bool isnested; // true if is nested | 159 bool isnested; // true if is nested |
159 VarDeclaration vthis; // 'this' parameter if this aggregate is nested | 160 VarDeclaration vthis; // 'this' parameter if this aggregate is nested |
160 | 161 } |
161 // Special member functions | 162 // Special member functions |
162 InvariantDeclaration inv; // invariant | 163 InvariantDeclaration inv; // invariant |
163 NewDeclaration aggNew; // allocator | 164 NewDeclaration aggNew; // allocator |
164 DeleteDeclaration aggDelete; // deallocator | 165 DeleteDeclaration aggDelete; // deallocator |
165 | 166 |