Named tuple from struct

Jacob Carlborg doob at me.com
Sat Jan 8 06:31:13 PST 2011


On 2011-01-08 09:15, Guilherme Vieira wrote:
> Is is possible to get a named tuple from a struct type?
>
> E.g.:
>
>     struct S { int foo; string bar; }
>
>     S s;
>
>     S.tupleof t; // S.tupleof is a tuple type, as opposed to s.tupleof,
>                   // which yields a tuple instance
>
>     t[0] = 1;
>     t.bar = "2";
>
>
> If not, I think it would be quite useful.

You cannot get only the names as a tuple but you can implement something 
similar:

1. Loop through the tuple
2. Get the name of a field in the struct using the "stringof" property 
on the tuple
3. Slice of the name of the struct and some other unwanted characters

You can have a look at this method as well: 
http://dsource.org/projects/dstep/browser/dstep/objc/bridge/ClassInitializer.d#L84

> Even still, a way to describe tuple types as if it was a struct would
> also be useful:
>
>     tuple StructLike
>     {
>          int foo;
>          string bar;
>     }
>
>     StructLike t;
>
>     t[0] = 1;
>     t.bar = "2";
>
>
> --
> Atenciosamente / Sincerely,
> Guilherme ("n2liquid") Vieira


-- 
/Jacob Carlborg


More information about the Digitalmars-d-learn mailing list