class cl_N; // We want to include cln.h only in numeric.cpp in order to
// avoid namespace pollution and keep compile-time low.
+#ifndef NO_GINAC_NAMESPACE
namespace GiNaC {
+#endif // ndef NO_GINAC_NAMESPACE
#define HASHVALUE_NUMERIC 0x80000001U
bool is_prime(void) const;
bool is_rational(void) const;
bool is_real(void) const;
+ bool is_cinteger(void) const;
+ bool is_crational(void) const;
bool operator==(numeric const & other) const;
bool operator!=(numeric const & other) const;
bool operator<(numeric const & other) const;
inline numeric denom(numeric const & x)
{ return x.denom(); }
-ex IEvalf(void);
+// numeric evaluation functions for class constant objects:
+
ex PiEvalf(void);
ex EulerGammaEvalf(void);
ex CatalanEvalf(void);
return static_cast<const numeric &>(*e.bp);
}
+#ifndef NO_GINAC_NAMESPACE
} // namespace GiNaC
+#endif // ndef NO_GINAC_NAMESPACE
#endif // ndef __GINAC_NUMERIC_H__