X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=ginac%2Fexpair.h;h=8580598d85a98e74c46347c45716703325bd90a3;hp=a066382a6a42bba6bb2dbb39201ac773d59c0a88;hb=955cb185a85535ab328ffedbfccdc508ce80fa91;hpb=487e5659efe401683eee0381b0d23f967ffffc3c diff --git a/ginac/expair.h b/ginac/expair.h index a066382a..8580598d 100644 --- a/ginac/expair.h +++ b/ginac/expair.h @@ -26,6 +26,10 @@ #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 * for methods like .compare() */ @@ -36,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) { @@ -48,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 @@ -97,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; } @@ -118,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; } @@ -195,4 +199,8 @@ public: } }; +#ifndef NO_GINAC_NAMESPACE +} // namespace GiNaC +#endif // ndef NO_GINAC_NAMESPACE + #endif // ndef __GINAC_EXPAIR_H__