On Tue, 18 Oct 2011 12:48:47 -0400, J Arrizza <cppge...@gmail.com> wrote:

I'm trying to write some sample code to:
  1 create an object via it's name
  2 search an object for it's functions
  3 call a static function in a class
  4 call a non-static function in an object

#1, #2 and #3 were straightforward. But  #4 looks like it's not possible in
DMD 2.0.

I found this:

http://www.digitalmars.com/d/archives/digitalmars/D/announce/Runtime_reflection_9949.html

which implies #4 is doable in Windows but not Linux. I'm using Linux 64-bit
Ubuntu.

Any other avenues I can chase?

TIA,
John


You could try out my improved variant implementation:

https://jshare.johnshopkins.edu/rjacque2/public_html/variant.mht

https://jshare.johnshopkins.edu/rjacque2/public_html/variant.d

Example:

import variant;

class Foo { int x; }
void main(string[] args) {
    Variant.__register!Foo;
    Variant var = Object.factory( typeid(Foo).toString );
    var.__reflect("x",Variant(10)); // or explicitly
    assert(var.__reflect("x") == 10);
    return;
}

Reply via email to