use mod in place of branching for SequenceNumber

This commit is contained in:
Stephen Birarda 2015-08-18 09:33:22 -07:00
parent f039851f13
commit 4e540828bd

View file

@ -39,11 +39,11 @@ public:
explicit operator UType() { return static_cast<UType>(_value); } explicit operator UType() { return static_cast<UType>(_value); }
inline SequenceNumber& operator++() { inline SequenceNumber& operator++() {
_value = (_value == MAX) ? 0 : ++_value; _value = (_value + 1) % (MAX + 1);
return *this; return *this;
} }
inline SequenceNumber& operator--() { inline SequenceNumber& operator--() {
_value = (_value == 0) ? MAX : --_value; _value = (_value - 1) % (MAX + 1);
return *this; return *this;
} }
inline SequenceNumber operator++(int) { inline SequenceNumber operator++(int) {