MNode

A multi_index node. Holds the value of a single element, plus per-node headers of each index, if any. The headers are all mixed in in the same scope. To prevent naming conflicts, a header field must be accessed with the number of its index.

Constructors

this
this(Value val)
Undocumented in source.

Destructor

~this
~this()
Undocumented in source.

Members

Aliases

ThisContainer
alias ThisContainer = _ThisContainer
Undocumented in source.

Manifest constants

signal_stuff
enum signal_stuff;
Undocumented in source.
stuff
enum stuff;
Undocumented in source.

Properties

value
Value value [@property getter]
Undocumented in source. Be warned that the author may not have intended to support it.
value
Value value [@property setter]
Undocumented in source. Be warned that the author may not have intended to support it.

Structs

Capsule
struct Capsule
Undocumented in source.

Templates

ForEachIndex
template ForEachIndex(size_t N, L...)
Undocumented in source.
ForEachSignal
template ForEachSignal(size_t i)

generate slots

Variables

container
ThisContainer container;
Undocumented in source.
val_ptr
Capsule* val_ptr;
Undocumented in source.
value
Value value;
Undocumented in source.

Examples

alias MNode!(IndexedBy!(Sequenced!(), Sequenced!(), OrderedUnique!()), int) Node;
Node* n1 = new Node();
Node* n2 = new Node();
n1.index!0 .next = n2;
n2.index!0 .prev = n1;
n1.index!1 .prev = n2;
n2.index!1 .next = n1;
n1.index!2 .left = n2;

Meta