Introspection

Sean Kelly sean at invisibleduck.org
Tue Sep 23 15:32:09 PDT 2008


== Quote from Sean Kelly (sean at invisibleduck.org)'s article
> Does anyone know a way to determine the type and offset of class/struct members?
> It seems we already have all the necessary pieces, but I haven't been able to get it
> to work thus far.  What I'm thinking of is something like this:
>     import std.stdio;
>     class C
>     {
>         int i;
>         void* p;
>     }
>     void main()
>     {
>         foreach( e; typeof(C.tupleof) )
>             writefln( e.stringof, " ", e.offsetof );
>     }
> However, offsetof doesn't appear to work on the members of this
> TypeTuple, nor on an instance tuple.  I've also tried various attempts
> at printing the address or value of the instance tuple, with no success.

Hm, now that I think about it, I bet this is possible with string mixins and __traits.


Sean



More information about the Digitalmars-d mailing list