示例#1
0
 def from_sympy(self, a):
     """Convert SymPy's Integer to ``dtype``. """
     if a.is_Integer:
         return GMPYInteger(a.p)
     elif a.is_Float and int(a) == a:
         return GMPYInteger(int(a))
     else:
         raise CoercionFailed("expected an integer, got %s" % a)
示例#2
0
    def from_RealField(K1, a, K0):
        """Convert mpmath's ``mpf`` to GMPY's ``mpz``. """
        p, q = K0.to_rational(a)

        if q == 1:
            return GMPYInteger(p)
示例#3
0
 def from_QQ_python(K1, a, K0):
     """Convert Python's ``Fraction`` to GMPY's ``mpz``. """
     if a.denominator == 1:
         return GMPYInteger(a.numerator)
示例#4
0
 def from_ZZ_python(K1, a, K0):
     """Convert Python's ``int`` to GMPY's ``mpz``. """
     return GMPYInteger(a)
示例#5
0
 def from_FF_python(K1, a, K0):
     """Convert ``ModularInteger(int)`` to GMPY's ``mpz``. """
     return GMPYInteger(a.to_int())
示例#6
0
    def from_RR_mpmath(K1, a, K0):
        """Convert mpmath's ``mpf`` to GMPY's ``mpz``. """
        p, q = K0.as_integer_ratio(a)

        if q == 1:
            return GMPYInteger(p)