View mode: basic / threaded / horizontal-split · Log in · Help
February 02, 2011
Is runtime introspection in a working state?
After exploring object.d/di I've found upon some functions I can use on a type returned by .classinfo. But "getMembers" which I'm interested in doesn't seem to work:

import std.stdio;

class Foo
{
   int x;
   void bar()
   {
   }
}

void main()
{
   Foo foo = new Foo();
   auto info = foo.classinfo;
   
   auto barField = info.getMembers("bar");
   writeln(typeid(barField));  // const(const(object.MemberInfo)[])
   writeln(barField.length);   // 0
   
   auto fields = info.getMembers(null);
   writeln(typeid(fields));    // const(const(object.MemberInfo)[])
   writeln(fields.length);     // 0
}

I can get other methods to work, such as toString and tsize. But no luck with getMembers.
Top | Discussion index | About this forum | D home