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)));
}
