don't use quire clear macros, hopefully for windows compatibility
[sfpy.git] / sfpy / posit.pyx
index fac8280b0faed279e6a5816f9720194f4347b978..1725cc23f98139c0a6675c6bb86151d840c29880 100644 (file)
@@ -69,6 +69,10 @@ cdef class Posit8:
     # convenience interface for use inside Python
 
     def __init__(self, value):
+        """Given an int, create a Posit8 from the bitpattern represented by
+        that int. Otherwise, given some value, create a Posit8 by rounding
+        float(value).
+        """
         if isinstance(value, int):
             self._c_posit.v = value
         else:
@@ -236,7 +240,7 @@ cdef class Posit8:
 
     cpdef to_quire(self):
         cdef cposit.quire8_t f
-        f = cposit.q8_clr(f)
+        f = cposit.q8Clr()
         f = cposit.q8_fdp_add(f, self._c_posit, _p8_one)
         return Quire8.from_c_quire(f)
 
@@ -269,11 +273,15 @@ cdef class Quire8:
     # convenience interface for use inside Python
 
     def __init__(self, value):
+        """Given an int, create a Quire8 from the bitpattern represented by
+        that int. Otherwise, given some value, create a Quire8 by rounding
+        float(value) to a Posit8.
+        """
         if isinstance(value, int):
             self._c_quire.v = value
         else:
             f = float(value)
-            self._c_quire = cposit.q8_clr(self._c_quire)
+            self._c_quire = cposit.q8Clr()
             self._c_quire = cposit.q8_fdp_add(self._c_quire, cposit.convertDoubleToP8(f), _p8_one)
 
     def __float__(self):
@@ -309,7 +317,7 @@ cdef class Quire8:
         self._c_quire = cposit.q8_fdp_sub(self._c_quire, a1._c_posit, a2._c_posit)
 
     cpdef void iclr(self):
-        self._c_quire = cposit.q8_clr(self._c_quire)
+        self._c_quire = cposit.q8Clr()
 
     # conversion back to posit
 
@@ -375,7 +383,7 @@ cpdef Posit32 p8_to_p32(Posit8 a1):
 
 cpdef Quire8 p8_to_q8(Posit8 a1):
     cdef cposit.quire8_t f
-    f = cposit.q8_clr(f)
+    f = cposit.q8Clr()
     f = cposit.q8_fdp_add(f, a1._c_posit, _p8_one)
     return Quire8.from_c_quire(f)
 
@@ -428,6 +436,10 @@ cdef class Posit16:
     # convenience interface for use inside Python
 
     def __init__(self, value):
+        """Given an int, create a Posit16 from the bitpattern represented by
+        that int. Otherwise, given some value, create a Posit16 by rounding
+        float(value).
+        """
         if isinstance(value, int):
             self._c_posit.v = value
         else:
@@ -595,7 +607,7 @@ cdef class Posit16:
 
     cpdef to_quire(self):
         cdef cposit.quire16_t f
-        f = cposit.q16_clr(f)
+        f = cposit.q16Clr()
         f = cposit.q16_fdp_add(f, self._c_posit, _p16_one)
         return Quire16.from_c_quire(f)
 
@@ -638,6 +650,10 @@ cdef class Quire16:
     # convenience interface for use inside Python
 
     def __init__(self, value):
+        """Given an int, create a Quire16 from the bitpattern represented by
+        that int. Otherwise, given some value, create a Quire16 by rounding
+        float(value) to a Posit16.
+        """
         if isinstance(value, int):
             for idx in range(1, -1, -1):
                 self._c_quire.v[idx] = value & 0xffffffffffffffff
@@ -646,7 +662,7 @@ cdef class Quire16:
                 raise OverflowError('value too large to fit in uint64_t[2]')
         else:
             f = float(value)
-            self._c_quire = cposit.q16_clr(self._c_quire)
+            self._c_quire = cposit.q16Clr()
             self._c_quire = cposit.q16_fdp_add(self._c_quire, cposit.convertDoubleToP16(f), _p16_one)
 
     def __float__(self):
@@ -686,7 +702,7 @@ cdef class Quire16:
         self._c_quire = cposit.q16_fdp_sub(self._c_quire, a1._c_posit, a2._c_posit)
 
     cpdef void iclr(self):
-        self._c_quire = cposit.q16_clr(self._c_quire)
+        self._c_quire = cposit.q16Clr()
 
     # conversion back to posit
 
@@ -752,7 +768,7 @@ cpdef Posit32 p16_to_p32(Posit16 a1):
 
 cpdef Quire16 p16_to_q16(Posit16 a1):
     cdef cposit.quire16_t f
-    f = cposit.q16_clr(f)
+    f = cposit.q16Clr()
     f = cposit.q16_fdp_add(f, a1._c_posit, _p16_one)
     return Quire16.from_c_quire(f)
 
@@ -805,6 +821,10 @@ cdef class Posit32:
     # convenience interface for use inside Python
 
     def __init__(self, value):
+        """Given an int, create a Posit32 from the bitpattern represented by
+        that int. Otherwise, given some value, create a Posit32 by rounding
+        float(value).
+        """
         if isinstance(value, int):
             self._c_posit.v = value
         else:
@@ -972,7 +992,7 @@ cdef class Posit32:
 
     cpdef to_quire(self):
         cdef cposit.quire32_t f
-        f = cposit.q32_clr(f)
+        f = cposit.q32Clr()
         f = cposit.q32_fdp_add(f, self._c_posit, _p32_one)
         return Quire32.from_c_quire(f)
 
@@ -1015,6 +1035,10 @@ cdef class Quire32:
     # convenience interface for use inside Python
 
     def __init__(self, value):
+        """Given an int, create a Quire32 from the bitpattern represented by
+        that int. Otherwise, given some value, create a Quire32 by rounding
+        float(value) to a Posit32.
+        """
         if isinstance(value, int):
             for idx in range(7, -1, -1):
                 self._c_quire.v[idx] = value & 0xffffffffffffffff
@@ -1023,7 +1047,7 @@ cdef class Quire32:
                 raise OverflowError('value too large to fit in uint64_t[8]')
         else:
             f = float(value)
-            self._c_quire = cposit.q32_clr(self._c_quire)
+            self._c_quire = cposit.q32Clr()
             self._c_quire = cposit.q32_fdp_add(self._c_quire, cposit.convertDoubleToP32(f), _p32_one)
 
     def __float__(self):
@@ -1063,7 +1087,7 @@ cdef class Quire32:
         self._c_quire = cposit.q32_fdp_sub(self._c_quire, a1._c_posit, a2._c_posit)
 
     cpdef void iclr(self):
-        self._c_quire = cposit.q32_clr(self._c_quire)
+        self._c_quire = cposit.q32Clr()
 
     # conversion back to posit
 
@@ -1129,7 +1153,7 @@ cpdef Posit16 p32_to_p16(Posit32 a1):
 
 cpdef Quire32 p32_to_q32(Posit32 a1):
     cdef cposit.quire32_t f
-    f = cposit.q32_clr(f)
+    f = cposit.q32Clr()
     f = cposit.q32_fdp_add(f, a1._c_posit, _p32_one)
     return Quire32.from_c_quire(f)