On Thu, Mar 28, 2024 at 05:23:39PM +0000, Andy Valencia via Digitalmars-d-learn 
wrote:
[...]
>     auto t = T();
>     foreach (i, ref val; t.tupleof) {
>         static if (is(typeof(val) == int)) {
>             val = this.get_int();
>         } else {
>             val = this.get_str();
>         }
>     }
>     return t;
> 
> So you cue off the type of the struct field, and decode the next CSV
> field, and put the value into the new struct.
> 
> Is there a cleaner way to do this?  This _does_ work, and gives me
> very compact code.

This is pretty clean, and is a good example of DbI. I use the same
method in my fastcsv experimental module to transcribe csv to an array
of structs:

        https://github.com/quickfur/fastcsv


T

-- 
Today's society is one of specialization: as you grow, you learn more and more 
about less and less. Eventually, you know everything about nothing.

Reply via email to