abacus: bignum: add order comparisons

This commit is contained in:
Bruno BELANYI 2021-08-20 17:01:21 +02:00
parent 17bd51d197
commit 2600eb2ba7
2 changed files with 30 additions and 0 deletions

View file

@ -18,8 +18,25 @@ public:
return !(lhs == rhs);
}
friend bool operator<(BigNum const& lhs, BigNum const& rhs) {
return lhs.less_than(rhs);
}
friend bool operator>(BigNum const& lhs, BigNum const& rhs) {
return rhs < lhs;
}
friend bool operator<=(BigNum const& lhs, BigNum const& rhs) {
return !(lhs > rhs);
}
friend bool operator>=(BigNum const& lhs, BigNum const& rhs) {
return !(lhs < rhs);
}
private:
bool equal(BigNum const& rhs) const;
bool less_than(BigNum const& rhs) const;
void canonicalize();
bool is_canonicalized() const;