summaryrefslogtreecommitdiff
path: root/src/mongo
diff options
context:
space:
mode:
authorAndrew Morrow <acm@10gen.com>2013-05-07 15:54:37 -0400
committerAndrew Morrow <acm@10gen.com>2013-05-07 23:34:50 -0400
commitc13d75db43b76a51e96dc61c70fecb75bdaccf70 (patch)
treeed7918d9cb5bb58ddfaded8633455ce870676c5c /src/mongo
parent8540c7ffb60c49534779c423e066e1e47d6962c4 (diff)
downloadmongo-c13d75db43b76a51e96dc61c70fecb75bdaccf70.tar.gz
Add non-operator variants of bitAnd and bitOr to SafeNum
Diffstat (limited to 'src/mongo')
-rw-r--r--src/mongo/util/safe_num-inl.h16
-rw-r--r--src/mongo/util/safe_num.h2
2 files changed, 14 insertions, 4 deletions
diff --git a/src/mongo/util/safe_num-inl.h b/src/mongo/util/safe_num-inl.h
index 80ece09d56d..1dc1dcbe785 100644
--- a/src/mongo/util/safe_num-inl.h
+++ b/src/mongo/util/safe_num-inl.h
@@ -60,20 +60,28 @@ namespace mongo {
return *this = addInternal(*this, rhs);
}
- inline SafeNum SafeNum::operator&(const SafeNum& rhs) const {
+ inline SafeNum SafeNum::bitAnd(const SafeNum& rhs) const {
return andInternal(*this, rhs);
}
+ inline SafeNum SafeNum::operator&(const SafeNum& rhs) const {
+ return bitAnd(rhs);
+ }
+
inline SafeNum& SafeNum::operator&=(const SafeNum& rhs) {
- return *this = andInternal(*this, rhs);
+ return *this = bitAnd(rhs);
}
- inline SafeNum SafeNum::operator|(const SafeNum& rhs) const {
+ inline SafeNum SafeNum::bitOr(const SafeNum& rhs) const {
return orInternal(*this, rhs);
}
+ inline SafeNum SafeNum::operator|(const SafeNum& rhs) const {
+ return bitOr(rhs);
+ }
+
inline SafeNum& SafeNum::operator|=(const SafeNum& rhs) {
- return *this = orInternal(*this, rhs);
+ return *this = bitOr(rhs);
}
inline bool SafeNum::isValid() const {
diff --git a/src/mongo/util/safe_num.h b/src/mongo/util/safe_num.h
index 1d4782fe774..6e13225766e 100644
--- a/src/mongo/util/safe_num.h
+++ b/src/mongo/util/safe_num.h
@@ -112,10 +112,12 @@ namespace mutablebson {
//
// Bitwise 'and' support
+ SafeNum bitAnd(const SafeNum& rhs) const;
SafeNum operator&(const SafeNum& rhs) const;
SafeNum& operator&=(const SafeNum& rhs);
// Bitwise 'or' support
+ SafeNum bitOr(const SafeNum& rhs) const;
SafeNum operator|(const SafeNum& rhs) const;
SafeNum& operator|=(const SafeNum& rhs);