From d71abcac045488c8a60c2efc77c9fca21fe48862 Mon Sep 17 00:00:00 2001 From: Marc Glisse Date: Fri, 11 May 2012 19:51:40 +0200 Subject: explicit conversion to bool --- gmpxx.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'gmpxx.h') diff --git a/gmpxx.h b/gmpxx.h index a218166d7..d47757864 100644 --- a/gmpxx.h +++ b/gmpxx.h @@ -1563,6 +1563,10 @@ public: // bool fits_double_p() const { return mpz_fits_double_p(mp); } // bool fits_ldouble_p() const { return mpz_fits_ldouble_p(mp); } +#if __GMPXX_USE_CXX11 + explicit operator bool() const { return mp->_mp_size != 0; } +#endif + // member operators __GMP_DECLARE_COMPOUND_OPERATOR(operator+=) __GMP_DECLARE_COMPOUND_OPERATOR(operator-=) @@ -1755,6 +1759,10 @@ public: double get_d() const { return mpq_get_d(mp); } +#if __GMPXX_USE_CXX11 + explicit operator bool() const { return mpq_numref(mp)->_mp_size != 0; } +#endif + // compound assignments __GMP_DECLARE_COMPOUND_OPERATOR(operator+=) __GMP_DECLARE_COMPOUND_OPERATOR(operator-=) @@ -1963,6 +1971,10 @@ public: // bool fits_double_p() const { return mpf_fits_double_p(mp); } // bool fits_ldouble_p() const { return mpf_fits_ldouble_p(mp); } +#if __GMPXX_USE_CXX11 + explicit operator bool() const { return mp->_mp_size != 0; } +#endif + // compound assignments __GMP_DECLARE_COMPOUND_OPERATOR(operator+=) __GMP_DECLARE_COMPOUND_OPERATOR(operator-=) -- cgit v1.2.1