Destruct.
Force this to the null/uninitialized/unset/undefined state.
Force this to the null/uninitialized/unset/undefined state.
Nullable type support.
Is true if all Types stored in this Algebraic has the same length.
Is true iff this may have aliasing through any of Types.
Get Value of type T.
Nullable type support.
Get maximum size of types Ts.
Is true if U is allowed to be assigned to this.
https://forum.dlang.org/post/jfasmgwoffmbtuvrtxey@forum.dlang.org
TODO: add warnings about combining byte, short, int, long, etc. TODO: add warnings about combining ubyte, ushort, uint, ulong, etc.
TODO: Use
align(1) struct Unaligned { align(1): ubyte filler; Victim* p; }
https://github.com/Geod24/minivariant
http://forum.dlang.org/post/osfrjcuabwscvrecuvre@forum.dlang.org https://forum.dlang.org/post/jfasmgwoffmbtuvrtxey@forum.dlang.org https://forum.dlang.org/post/tdviqyzrcpttwwnvlzpv@forum.dlang.org https://issues.dlang.org/show_bug.cgi?id=15399
Lightweight version of std.variant.Algebraic that doesn't rely on TypeInfo.
Member functions are, when possible, pure nothrow @safe @nogc.
Storage (packing) is more space-efficient.
TODO: support implicit conversions of (un)signed integer type to larger type