зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1524890 - P9. Add += and -= operator. r=gerald
Differential Revision: https://phabricator.services.mozilla.com/D20167 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
7f3801ebd7
Коммит
ed02a5879c
|
@ -88,7 +88,6 @@ class Interval {
|
|||
return SelfType(mStart + aVal, mEnd + aVal, mFuzz);
|
||||
}
|
||||
|
||||
// Basic interval arithmetic operator definition.
|
||||
SelfType operator-(const SelfType& aOther) const {
|
||||
return SelfType(mStart - aOther.mEnd, mEnd - aOther.mStart,
|
||||
mFuzz + aOther.mFuzz);
|
||||
|
@ -98,6 +97,32 @@ class Interval {
|
|||
return SelfType(mStart - aVal, mEnd - aVal, mFuzz);
|
||||
}
|
||||
|
||||
SelfType& operator+=(const SelfType& aOther) {
|
||||
mStart += aOther.mStart;
|
||||
mEnd += aOther.mEnd;
|
||||
mFuzz += aOther.mFuzz;
|
||||
return *this;
|
||||
}
|
||||
|
||||
SelfType& operator+=(const T& aVal) {
|
||||
mStart += aVal;
|
||||
mEnd += aVal;
|
||||
return *this;
|
||||
}
|
||||
|
||||
SelfType& operator-=(const SelfType& aOther) {
|
||||
mStart -= aOther.mStart;
|
||||
mEnd -= aOther.mEnd;
|
||||
mFuzz += aOther.mFuzz;
|
||||
return *this;
|
||||
}
|
||||
|
||||
SelfType& operator-=(const T& aVal) {
|
||||
mStart -= aVal;
|
||||
mEnd -= aVal;
|
||||
return *this;
|
||||
}
|
||||
|
||||
bool operator==(const SelfType& aOther) const {
|
||||
return mStart == aOther.mStart && mEnd == aOther.mEnd;
|
||||
}
|
||||
|
@ -540,7 +565,6 @@ class IntervalSet {
|
|||
return false;
|
||||
}
|
||||
|
||||
|
||||
bool Intersects(const ElemType& aInterval) const {
|
||||
for (const auto& interval : mIntervals) {
|
||||
if (interval.Intersects(aInterval)) {
|
||||
|
|
Загрузка…
Ссылка в новой задаче