On Saturday, 26 July 2014 at 00:26:08 UTC, Ary Borenszweig wrote:
Or use Algebraic, but it currently doesn't support recursive type definitions.

Algebraic does support recursive type definitions.

import std.variant;

alias Rec = Algebraic!(int, This*);

void main()
{
    //I'm not sure why this works
    auto i = Rec(Rec(Rec(1)));

    i = Rec(new Rec(new Rec(1)));
}

Reply via email to