Template Enumap.opOpAssign

Perform an in-place operation.

Arguments

template opOpAssign(string op);

Functions

Function name Description
opOpAssign

Example

auto  base  = enumap(Element.water, 4, Element.air , 3);
const bonus = enumap(Element.water, 5, Element.fire, 2);

base += bonus;

assert(base.water == 4 + 5);
assert(base.air   == 3 + 0);
assert(base.fire  == 0 + 2);
assert(base.earth == 0 + 0);

base -= bonus; // cancel out the previous addition

assert(base.water == 4);
assert(base.air   == 3);
assert(base.fire  == 0);
assert(base.earth == 0);

base *= bonus;
assert(base.water == 4 * 5);
assert(base.air   == 3 * 0);
assert(base.fire  == 0 * 2);
assert(base.earth == 0 * 0);

Authors

Ryan Roden-Corrent (rcorre)

Copyright

© 2015, Ryan Roden-Corrent

License

MIT