get only user-defined members

Jonathan M Davis newsgroup.d at jmdavisprog.com
Sat Dec 16 07:23:38 UTC 2017


On Saturday, December 16, 2017 04:01:10 Marc via Digitalmars-d-learn wrote:
> how do I from class:
> > class Person {
> >
> >  string name;
> >  int age;
> >
> > }
>
> do:
> > auto c = [__traits(allMembers, Person)];
>
> then return only ["name", "age"] rather ["name, "age", "ctor",
> "toString" ... ]?

Try __traits(derivedMembers, Person).

https://dlang.org/spec/traits.html#derivedMembers

Depending on what you want though, it's not all that uncommon to use a
variety of traits to filter the list down to whatever it is that you
actually want. std.traits and std.meta are your friends in addition to
__traits.

- Jonathan M Davis



More information about the Digitalmars-d-learn mailing list