xxxxxxxxxx
import std;
class A { int a, a1; }
class B : A { int b; }
class C : B { int c, c1; }
alias AllClasses(T) = Reverse!(AliasSeq!(T, BaseClassesTuple!T[0..$-1]));
alias AllFieldNames(T) = staticMap!(FieldNameTuple, AllClasses!T);
void main(){
static foreach(T; AliasSeq!(A, B, C))
AllFieldNames!T.stringof.writeln;
}