aboutsummaryrefslogtreecommitdiff
path: root/common/rational.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'common/rational.cpp')
-rw-r--r--common/rational.cpp29
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;
}