Dear,

I use FieldTypeTuple and FieldNameTuple to get type and correponding field name but I fail to loop over these tuple.

As example:

struct Person{
    private string name;
    private ushort age;
    private bool   isMale;

    this(string name, ushort age, bool   isMale){
        this.name    = name;
        this.age     = age;
        this.isMale  = isMale;
    }
}

I would like to print with pragma msg:
 string name
 ushort age
 bool   isMale

for this I tried:

template getDeclarationFields( FieldTypeName...){
    enum typeIndex  = 0;
    enum nameIndex  = FieldTypeName.length / 2;
enum res = FieldTypeName[typeIndex] ~ ' ' ~ FieldTypeName[nameIndex] ~';';
    static if( FieldTypeName.length == 1)
        enum getDeclarationFields = res;
    else
enum getDeclarationFields = res ~ getDeclarationFields!( FieldTypeName[typeIndex+1..nameIndex] ~ FieldTypeName[nameIndex+1..$] );
}

but that don't build

I though that orange lib should do this somewhere but the lib usi his self trait method

thanks for your help


Reply via email to