annotate dmd/ClassInfoDeclaration.d @ 192:eb38fdcb3e62 default tip

updated to compile with dmd2.062
author korDen
date Sat, 02 Mar 2013 01:25:52 -0800
parents b0d41ff5e0df
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
1 module dmd.ClassInfoDeclaration;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
2
114
e28b18c23469 added a module dmd.common for commonly used stuff
Trass3r
parents: 100
diff changeset
3 import dmd.common;
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
4 import dmd.VarDeclaration;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
5 import dmd.ClassDeclaration;
166
d8565fbd755c Moved object and classinfo from ClassDeclaration to Global (as part of getting rid of the global state)
korDen
parents: 114
diff changeset
6 import dmd.Global;
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
7 import dmd.Dsymbol;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
8 import dmd.Scope;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
9 import dmd.Loc;
79
43073c7c7769 updated to 2.035
Trass3r
parents: 72
diff changeset
10 import dmd.OutBuffer;
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
11 import dmd.Id;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
12 import dmd.STC;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
13
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
14 import dmd.backend.Symbol;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
15 import dmd.backend.Classsym;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
16 import dmd.backend.FL;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
17 import dmd.backend.SFL;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
18 import dmd.codegen.Util;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
19 import dmd.backend.SC;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
20 import dmd.backend.Util;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
21
187
b0d41ff5e0df Added expandability scheme outlined in http://www.dsource.org/forums/viewtopic.php?t=5659&sid=6f2150ff5b0bffcd47512a6a7608d218
Abscissa
parents: 178
diff changeset
22 import dmd.DDMDExtensions;
b0d41ff5e0df Added expandability scheme outlined in http://www.dsource.org/forums/viewtopic.php?t=5659&sid=6f2150ff5b0bffcd47512a6a7608d218
Abscissa
parents: 178
diff changeset
23
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
24 class ClassInfoDeclaration : VarDeclaration
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
25 {
187
b0d41ff5e0df Added expandability scheme outlined in http://www.dsource.org/forums/viewtopic.php?t=5659&sid=6f2150ff5b0bffcd47512a6a7608d218
Abscissa
parents: 178
diff changeset
26 mixin insertMemberExtension!(typeof(this));
b0d41ff5e0df Added expandability scheme outlined in http://www.dsource.org/forums/viewtopic.php?t=5659&sid=6f2150ff5b0bffcd47512a6a7608d218
Abscissa
parents: 178
diff changeset
27
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
28 ClassDeclaration cd;
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
29
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
30 this(ClassDeclaration cd)
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
31 {
178
e3afd1303184 Many small bugs fixed
korDen
parents: 166
diff changeset
32 register();
e3afd1303184 Many small bugs fixed
korDen
parents: 166
diff changeset
33
166
d8565fbd755c Moved object and classinfo from ClassDeclaration to Global (as part of getting rid of the global state)
korDen
parents: 114
diff changeset
34 super(Loc(0), global.classinfo.type, cd.ident, null);
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
35
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
36 this.cd = cd;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
37 storage_class = STC.STCstatic | STC.STCgshared;
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
38 }
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
39
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
40 override Dsymbol syntaxCopy(Dsymbol)
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
41 {
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
42 assert(false); // should never be produced by syntax
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
43 return null;
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
44 }
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
45
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
46 override void semantic(Scope sc)
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
47 {
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
48 }
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
49
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
50 override void emitComment(Scope sc)
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
51 {
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
52 }
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
53
79
43073c7c7769 updated to 2.035
Trass3r
parents: 72
diff changeset
54 override void toJsonBuffer(OutBuffer buf)
43073c7c7769 updated to 2.035
Trass3r
parents: 72
diff changeset
55 {
43073c7c7769 updated to 2.035
Trass3r
parents: 72
diff changeset
56 }
100
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
57
8e1e220cebb3 implemented missing methods
Trass3r
parents: 79
diff changeset
58 override Symbol* toSymbol()
0
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
59 {
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
60 return cd.toSymbol();
10317f0c89a5 Initial commit
korDen
parents:
diff changeset
61 }
72
2e2a5c3f943a reduced warnings by adding override to the methods
Trass3r
parents: 0
diff changeset
62 }