Runtime heterogeneous collections?
Seb
seb at wilzba.ch
Thu Jan 17 08:53:03 UTC 2019
On Thursday, 17 January 2019 at 02:27:20 UTC, Neia Neutuladh
wrote:
> On Thu, 17 Jan 2019 02:21:21 +0000, Steven O wrote:
>> I want to create a heterogeneous collection of red-black
>> trees, and I can't seem to figure out if it's possible.
>
> RedBlackTree!int and RedBlackTree!string are entirely different
> types (they just happen to be generated from the same template).
>
> There are two reasonable ways of doing things:
>
> 1. Make a wrapper class. Now you can store Object[], or you can
> make a
> base class or base interface and use that.
> 2. Use Variant, which can wrap anything, or the related
> Algebraic, which
> can wrap a fixed collection of types.
>
> You can use this technique either with the collection types
> themselves or with the value types.
As the OP is most likely looking for Variant, let me link to it:
https://dlang.org/phobos/std_variant.html#Variant
More information about the Digitalmars-d-learn
mailing list