X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fexpair.h;h=8580598d85a98e74c46347c45716703325bd90a3;hp=0a9867750ade0ca86a456bbf78de604f47f83ced;hb=955cb185a85535ab328ffedbfccdc508ce80fa91;hpb=9eab44408b9213d8909b7a9e525f404ad06064dd diff --git a/ginac/expair.h b/ginac/expair.h index 0a986775..8580598d 100644 --- a/ginac/expair.h +++ b/ginac/expair.h @@ -26,7 +26,9 @@ #include #include +#ifndef NO_GINAC_NAMESPACE namespace GiNaC { +#endif // ndef NO_GINAC_NAMESPACE /** A pair of expressions. * This similar to, but slightly extended STL's pair<> but we need to account @@ -38,7 +40,7 @@ public: ~expair() {} expair(expair const & other) : rest(other.rest), coeff(other.coeff) { - ASSERT(is_ex_exactly_of_type(coeff,numeric)); + GINAC_ASSERT(is_ex_exactly_of_type(coeff,numeric)); } expair const & operator=(expair const & other) { @@ -50,14 +52,14 @@ public: } expair(ex const & r, ex const & c) : rest(r), coeff(c) { - ASSERT(is_ex_exactly_of_type(coeff,numeric)); + GINAC_ASSERT(is_ex_exactly_of_type(coeff,numeric)); } bool is_numeric_with_coeff_1(void) const { - ASSERT(is_ex_exactly_of_type(coeff,numeric)); + GINAC_ASSERT(is_ex_exactly_of_type(coeff,numeric)); return is_ex_exactly_of_type(rest,numeric) && - (ex_to_numeric(coeff).compare(numONE())==0); + (coeff.is_equal(ex(1))); } bool is_equal(expair const & other) const @@ -99,14 +101,14 @@ public: */ if (is_ex_exactly_of_type(rest,numeric) && is_ex_exactly_of_type(other.rest,numeric)) { - if (ex_to_numeric(coeff).compare(numONE())==0) { - if (ex_to_numeric(other.coeff).compare(numONE())==0) { + if (coeff.is_equal(ex(1))) { + if ((other.coeff).is_equal(ex(1))) { // both have coeff 1: compare rests return rest.compare(other.rest)<0; } // only this has coeff 1: > return false; - } else if (ex_to_numeric(other.coeff).compare(numONE())==0) { + } else if ((other.coeff).is_equal(ex(1))) { // only other has coeff 1: < return true; } @@ -120,14 +122,14 @@ public: { if (is_ex_exactly_of_type(rest,numeric) && is_ex_exactly_of_type(other.rest,numeric)) { - if (ex_to_numeric(coeff).compare(numONE())==0) { - if (ex_to_numeric(other.coeff).compare(numONE())==0) { + if ((coeff).is_equal(ex(1))) { + if ((other.coeff).is_equal(ex(1))) { // both have coeff 1: compare rests return rest.compare(other.rest); } // only this has coeff 1: > return 1; - } else if (ex_to_numeric(other.coeff).compare(numONE())==0) { + } else if ((other.coeff).is_equal(ex(1))) { // only other has coeff 1: < return -1; } @@ -197,6 +199,8 @@ public: } }; +#ifndef NO_GINAC_NAMESPACE } // namespace GiNaC +#endif // ndef NO_GINAC_NAMESPACE #endif // ndef __GINAC_EXPAIR_H__