68 return a.getState() < b.getState();
72 auto first = storage.begin();
73 auto last = storage.end();
77 while (++first != last) {
78 if (!(result->getState() == first->getState())) {
79 if (++result != first) {
80 *result = std::move(*first);
83 result->addToValue(first->getValue());
88 storage.resize(std::distance(storage.begin(), result));
StateType const & getState() const