git.ucc.asn.au
/
ipdf
/
code.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
David's final changes: more profiler features, fixes.
[ipdf/code.git]
/
src
/
gmprat.h
diff --git
a/src/gmprat.h
b/src/gmprat.h
index
3e275d2
..
e0c9849
100644
(file)
--- a/
src/gmprat.h
+++ b/
src/gmprat.h
@@
-33,7
+33,7
@@
class Gmprat
return "-" + operator-().Str();
}
double p = Log10();
return "-" + operator-().Str();
}
double p = Log10();
- if (isinf(p))
+ if (
std::
isinf(p))
return "0";
int P = (int)p;
return "0";
int P = (int)p;
@@
-104,6
+104,11
@@
class Gmprat
Gmprat Abs() const {Gmprat a(*this); mpq_abs(a.m_op, a.m_op); return a;}
Gmprat Abs() const {Gmprat a(*this); mpq_abs(a.m_op, a.m_op); return a;}
+ size_t Size() const
+ {
+ return sizeof(uint64_t) * (mpq_numref(m_op)->_mp_alloc + mpq_denref(m_op)->_mp_alloc);
+ }
+
private:
friend std::ostream& operator<<(std::ostream& os, const Gmprat & fith);
mpq_t m_op;
private:
friend std::ostream& operator<<(std::ostream& os, const Gmprat & fith);
mpq_t m_op;
@@
-116,7
+121,13
@@
inline std::ostream & operator<<(std::ostream & os, const Gmprat & fith)
}
}
+#if REALTYPE != 9
+inline std::string Str(const Gmprat & g) {return g.Str();}
+inline double Log10(const Gmprat & g) {return g.Log10();}
+inline size_t Size(const Gmprat & g) {return g.Size();}
+inline Gmprat Abs(const Gmprat & g) {return g.Abs();}
+#endif
#endif //_GMPRAT_H
#endif //_GMPRAT_H
UCC
git Repository :: git.ucc.asn.au