Getting FieldNameTuple including all base-classes.
Paul Backus
snarwin at gmail.com
Wed May 20 01:18:24 UTC 2020
On Tuesday, 19 May 2020 at 23:15:45 UTC, realhet wrote:
> Hi,
>
> I was able to reach all the fields in a subclass using foreach
> and BaseClassesTuple, but is there a way to do this using
> functional programming primitives, but in compile time for
> tuples?
>
> private template FieldNameTuple2(T) {
> enum FieldNameTuple2 = BaseClassesTuple!T.map!(S =>
> FieldNameTuple!S).join;
> }
>
> This is obviously wrong, but is there a way to do it?
>
> I've searched for FieldNameTuple and BaseClassesTuple, but
> without luck. It's weird because it seems like a common thing
> to do.
>
> Thanks in advance!
I think what you want is `std.meta.staticMap`. Something like
this:
alias FieldNameTuple2(T) = staticMap!(FieldNameTuple,
BaseClassesTuple!T);
More information about the Digitalmars-d-learn
mailing list