Getting derived classes

Steven Schveighoffer schveiguy at yahoo.com
Fri Oct 17 06:44:56 PDT 2008


"Ary Borenszweig" wrote
> Andrei Alexandrescu escribió:
>> dsimcha wrote:
>>> I know that, in std.traits, there's a template that spits out all base 
>>> classes
>>> for a given class.  Based on reading the source, it seems to work based 
>>> on a
>>> rather interesting use case for is expressions.  Is there any equivalent 
>>> way
>>> to do the opposite:  For any given position in a class hierarchy, to get 
>>> a
>>> tuple of all possible descendants?
>>
>> That's not possible in general because in D the derived classes form an 
>> open set. I guess it could be done at runtime via reflection (not 
>> implemented afaik), but not at compile time.
>
> But for a given set of modules, the hierarchy is finite and known.

Not at compile time, only at link time.  You can't compile code at link 
time.

-Steve 





More information about the Digitalmars-d mailing list