diff options
Diffstat (limited to 'common/rational.cpp')
-rw-r--r-- | common/rational.cpp | 29 |
1 files changed, 13 insertions, 16 deletions
diff --git a/common/rational.cpp b/common/rational.cpp index 163044f349..f55c2dcfe3 100644 --- a/common/rational.cpp +++ b/common/rational.cpp @@ -22,6 +22,7 @@ * $Id$ */ +#include "common/debug.h" #include "common/rational.h" #include "common/util.h" #include "common/algorithm.h" @@ -257,38 +258,34 @@ frac_t Rational::toFrac() const { return (_num * FRAC_ONE) / _denom; } -Rational::operator int() const { - return toInt(); -} - -Rational::operator double() const { - return toDouble(); -} - const Rational operator+(int left, const Rational &right) { - Rational tmp = right; - tmp += left; + Rational tmp(left); + tmp += right; return tmp; } const Rational operator-(int left, const Rational &right) { - Rational tmp = right; - tmp -= left; + Rational tmp(left); + tmp -= right; return tmp; } const Rational operator*(int left, const Rational &right) { - Rational tmp = right; - tmp *= left; + Rational tmp(left); + tmp *= right; return tmp; } const Rational operator/(int left, const Rational &right) { - Rational tmp = right; - tmp /= left; + Rational tmp(left); + tmp /= right; return tmp; } +void Rational::debugPrint(int debuglevel, const char *caption) const { + debug(debuglevel, "%s %d/%d", caption, _num, _denom); +} + bool operator==(int left, const Rational &right) { return right == left; } |