vibe.d beta banner
get vibe.d
0.8.4

Asynchronous I/O that doesn’t get in your way, written in D

Module taggedalgebraic

Algebraic data type implementation based on a tagged union.

Functions

NameDescription
apply(ta) Calls a the given callback with the static type of the contained value.
disableIndex() User-defined attibute to disable opIndex forwarding for a particular tagged union member.
get(ta) Gets the value stored in an algebraic type based on its data type.
hasType(ta) Tests if the algebraic type stores a value of a certain data type.

Structs

NameDescription
TaggedAlgebraic Implements a generic algebraic type using an enum to identify the stored type.
Void Convenience type that can be used for union fields that have no value (void is not allowed).

Aliases

NameTypeDescription
TypeOf FieldTypeTuple!U[kind] Maps a kind enumeration value to the corresponding field type.
Authors

Sönke Ludwig

Copyright

Copyright 2015-2016, Sönke Ludwig.

License

www.boost.org/LICENSE_1_0.txt, Boost License 1.0.