Hi D

I'm working on data streaming reading module where the encoding of each input array isn't known until runtime. For example date-time column values may be encoded as:

   * An ISO-8601 UTC time string (aka char[])
* A ASCII floating point value with an indicated unit size and epoch (aka char[]) * A IEEE double with an indicated endianness, unit size, and epoch. (aka double[]) * A 64-bit signed in with an indicated endianness, unit size, and epoch. (aka long[])

My job when encountering a date-time array in the stream is to just to properly convert the info into a broken down time structure, regardless of the encoding.

Initially I've been reading chunks of the stream into a `ubyte[]` and then using `cast` and `to` as needed, but then I stumbled across std.variant which can hold any type.

I'm wondering if std.variant is useful in cases where type information is only known at run-time, since many of the flexible data structures I've run across so far in D require compile-time information.

Thanks,

Reply via email to