PageRenderTime 24ms CodeModel.GetById 13ms app.highlight 6ms RepoModel.GetById 1ms app.codeStats 0ms

/runtime/classinfo.d

http://github.com/wilkie/djehuty
D | 39 lines | 23 code | 10 blank | 6 comment | 0 complexity | 1762c6389ba5b7b975a4e6addac8a40a MD5 | raw file
 1module runtime.classinfo;
 2
 3import core.string;
 4import core.definitions;
 5
 6// Description: The information stored for a class. Retrieved via the .classinfo property.
 7//  It is stored as the first entry in the class' vtbl[].
 8class ClassInfo {
 9	byte[] init;
10
11	string name;
12	void*[] vtbl;
13
14	Interface[] interfaces;
15
16	ClassInfo base;
17	void function() destructor;	
18	void function(Object) classInvariant;
19
20	uint flags;
21	void function() deallocator;
22	OffsetTypeInfo[] offTi;
23
24	Object function() defaultConstructor;
25
26	TypeInfo typeinfo;
27
28	static ClassInfo find(string classname) {
29		// Loop through every module
30		// Then loop through every class
31		// Trying to find the class
32		return null;
33	}
34
35	Object create() {
36		// Class factory
37		return null;
38	}
39}