[pypy-svn] rev 2437 - pypy/trunk/src/pypy/objspace/std
pmaupin at codespeak.net
pmaupin at codespeak.net
Wed Dec 17 14:41:19 CET 2003
Author: pmaupin
Date: Wed Dec 17 14:41:18 2003
New Revision: 2437
Modified:
pypy/trunk/src/pypy/objspace/std/floatobject.py
Log:
Added floordiv
Modified: pypy/trunk/src/pypy/objspace/std/floatobject.py
==============================================================================
--- pypy/trunk/src/pypy/objspace/std/floatobject.py (original)
+++ pypy/trunk/src/pypy/objspace/std/floatobject.py Wed Dec 17 14:41:18 2003
@@ -115,7 +115,19 @@
x = w_float1.floatval
y = w_float2.floatval
try:
- z = x / y # XXX make sure this is the new true division
+ z = x / y
+ except ZeroDivisionError:
+ raise OperationError(space.w_ZeroDivisionError, space.wrap("float division"))
+ except FloatingPointError:
+ raise FailedToImplement(space.w_FloatingPointError, space.wrap("float division"))
+ # no overflow
+ return W_FloatObject(space, z)
+
+def floordiv__Float_Float(space, w_float1, w_float2):
+ x = w_float1.floatval
+ y = w_float2.floatval
+ try:
+ z = x // y
except ZeroDivisionError:
raise OperationError(space.w_ZeroDivisionError, space.wrap("float division"))
except FloatingPointError:
@@ -144,7 +156,7 @@
if y == 0.0:
raise FailedToImplement(space.w_ZeroDivisionError, space.wrap("float modulo"))
try:
- # this is a hack!!!! must be replaced by a real fmod function
+ # XXX this is a hack!!!! must be replaced by a real fmod function
mod = math.fmod(x,y)
div = (x -mod) / y
if (mod):
More information about the Pypy-commit
mailing list