Revert changes in 62669, since they caused test failures.

__floor__, __ceil__ and __round__ are still wrong,
but they need to be replaced with something rather
than just removed.
This commit is contained in:
Mark Dickinson 2008-05-04 00:00:19 +00:00
parent e757005190
commit 349a78534b

View file

@ -1649,6 +1649,9 @@ class Decimal(_numbers.Real):
else:
return -1
def __round__(self):
return self._round_down(0)
def _round_up(self, prec):
"""Rounds away from 0."""
return -self._round_down(prec)
@ -1684,6 +1687,9 @@ class Decimal(_numbers.Real):
else:
return -self._round_down(prec)
def __ceil__(self):
return self._round_ceiling(0)
def _round_floor(self, prec):
"""Rounds down (not towards 0 if negative)"""
if not self._sign:
@ -1691,6 +1697,9 @@ class Decimal(_numbers.Real):
else:
return -self._round_down(prec)
def __floor__(self):
return self._round_floor(0)
def _round_05up(self, prec):
"""Round down unless digit prec-1 is 0 or 5."""
if prec and self._int[prec-1] not in '05':