DIP8: Templating ClassInfo and TypeInfo
grauzone
none at example.net
Mon Nov 2 19:55:37 PST 2009
dsimcha wrote:
> http://prowiki.org/wiki4d/wiki.cgi?LanguageDevel/DIPs/DIP8
>
> Abstract:
>
> Currently, the layout of D's runtime type info, or RTTI, is defined in
> object.d. The details of how the fields of each instantiation of these classes
> are populated are buried deep inside the compiler. If ClassInfo and TypeInfo
> were instead template classes inheriting from some non-templated abstract base
> class that defined the interface and field layout, any compile-time
> introspection feature could trivially be added to RTTI and made available at
> runtime.
I'd say it's a good idea. We have all this crap like TypeInfo.init,
TypeInfo.equals/compare/hash for which there's separate implementations
for each type (like TypeInfo_f in ti_float.d; repeat for each type).
With templated TypeInfos, all these could be trivially provided by the
same code.
More information about the Digitalmars-d
mailing list