Construct an Enumap from a static array.
Assign from a range with a number of elements exactly matching length.
Get a range iterating over the members of the enum K.
Return a range of (EnumMember, value) pairs.
Get a range iterating over the stored values.
Execute a foreach statement over (EnumMember, value) pairs.
Execute foreach over (EnumMember, ref value) pairs to modify elements.
An Enumap can be assigned from an array or range of values
Apply an array-wise operation between two Enumaps.
Access the value at the index specified by the name of an enum member.
Access the value at the index specified by an enum member.
Perform an in-place operation.
Perform a unary operation on each entry.
The number of entries in the Enumap
The type of enum used as a key. The enum values must start at 0, and increase by 1 for each entry.
The type of value stored for each enum member
A structure that maps each member of an enum to a single value.
An Enumap is a lightweight alternative to an associative array that is useable when your key type is an enum.
It provides some added benefits over the AA, such as array-wise operations, default values for all keys, and some nice opDispatch based syntactic sugar for element access.
The key enum must be backed by an integral type and have 'default' numbering. The backing value must start at 0 and grows by 1 for each member.