list of anything
Tomek Sowiński
just at ask.me
Sat Dec 18 04:31:44 PST 2010
spir napisał:
> In Lisp-like languages, a list can hold anything:
> (1 "a" (1 "a"))
> I do not find it trivial to simulate this in D. Using a linked list or an array: the issue is not with the kind of
> collection but with elements. In either case, I guess, elements should actually be void* pointers. But then, the type
> is lost; to properly get back stored values, it seems one would have to add tagged-union-like tagging --but for
> pointers.
>
> How would you do that? Various proposals welcome :-)
std.variant is the discriminated union type in Phobos. Conversion back to original type is not implicit, though.
--
Tomek
More information about the Digitalmars-d-learn
mailing list