On Friday, 1 September 2017 at 18:06:04 UTC, Jonathan M Davis wrote:
[...]

You can use std.meta.Filter if you need to filter anything out of an AliasSeq like this, and whether you should be filtering out those functions is highly dependent on what you're doing - e.g. sometimes, you really want to get your hands on __ctor, whereas other times, that's not at all what you're looking for. But because it gives you everything, you have a choice, whereas if they were filtered out, then any code that needed to know about them would be screwed.

- Jonathan M Davis

I'm working on a runtime reflection library, so there won't be any access to the actual type. Any access to constructors will have to be done through an interface like these:

class Struct : Reflection {
    size_t size() const;
    void construct(void[] mem);
}

class Class : Reflection {
    Object createInstance() const;
}

The library is basically done, but needs polishing. Also, I'm stuck waiting for things like __traits() being allowed to bypass protection, which was recently decided upon, but not yet implemented (hopefully this hasn't been overturned again).

  Thanks

Reply via email to