On Sunday, 1 June 2014 at 13:58:03 UTC, bioinfornatics wrote:
On Sunday, 1 June 2014 at 13:52:27 UTC, Tobias Pankrath wrote:
Maybe http://dlang.org/property.html#stringof helps.

yes that help a lot thanks

End of spam ( joke ^^)


I found it :-)

import std.stdio;
import std.typecons;
import std.conv;

struct Coord
{
     int x;
     int y;
     int z;
}

template toTuple(T){
     static string maker(){
         string statement = "alias toTuple = Tuple!(";
         foreach(const memberName; __traits(allMembers, T)){
             statement ~=  typeof(__traits(getMember, T,
memberName)).stringof  ~ ",\"" ~ memberName ~ "\", " ;
         }
         statement = statement[0..$-2] ~ ") ;" ; // $-1 to remove
extra comma
         return statement;
     }
     pragma( msg, maker() );
     mixin( maker() );
}


void main()
{
     Coord c;
     alias A = toTuple!Coord;
     A a;
     a[0] = 1;
     a.x = 1;
}

Reply via email to