r60480 - in python/trunk/Lib: rational.py test/test_rational.py

Author: jeffrey.yasskin Date: Thu Jan 31 18:45:59 2008 New Revision: 60480 Modified: python/trunk/Lib/rational.py python/trunk/Lib/test/test_rational.py Log: Remove unused to-be-magic methods from Rational per issue 1968. Do not port this patch to py3k. Modified: python/trunk/Lib/rational.py ============================================================================== --- python/trunk/Lib/rational.py (original) +++ python/trunk/Lib/rational.py Thu Jan 31 18:45:59 2008 @@ -410,40 +410,6 @@ __int__ = __trunc__ - def __floor__(a): - """Will be math.floor(a) in 3.0.""" - return a.numerator // a.denominator - - def __ceil__(a): - """Will be math.ceil(a) in 3.0.""" - # The negations cleverly convince floordiv to return the ceiling. - return -(-a.numerator // a.denominator) - - def __round__(self, ndigits=None): - """Will be round(self, ndigits) in 3.0. - - Rounds half toward even. - """ - if ndigits is None: - floor, remainder = divmod(self.numerator, self.denominator) - if remainder * 2 < self.denominator: - return floor - elif remainder * 2 > self.denominator: - return floor + 1 - # Deal with the half case: - elif floor % 2 == 0: - return floor - else: - return floor + 1 - shift = 10**abs(ndigits) - # See _operator_fallbacks.forward to check that the results of - # these operations will always be Rational and therefore have - # __round__(). - if ndigits > 0: - return Rational((self * shift).__round__(), shift) - else: - return Rational((self / shift).__round__() * shift) - def __hash__(self): """hash(self) Modified: python/trunk/Lib/test/test_rational.py ============================================================================== --- python/trunk/Lib/test/test_rational.py (original) +++ python/trunk/Lib/test/test_rational.py Thu Jan 31 18:45:59 2008 @@ -197,14 +197,6 @@ def testConversions(self): self.assertTypedEquals(-1, trunc(R(-11, 10))) self.assertTypedEquals(-1, int(R(-11, 10))) - self.assertTypedEquals(-2, R(-11, 10).__floor__()) - self.assertTypedEquals(-1, R(-11, 10).__ceil__()) - self.assertTypedEquals(-1, R(-10, 10).__ceil__()) - - self.assertTypedEquals(0, R(-1, 10).__round__()) - self.assertTypedEquals(0, R(-5, 10).__round__()) - self.assertTypedEquals(-2, R(-15, 10).__round__()) - self.assertTypedEquals(-1, R(-7, 10).__round__()) self.assertEquals(False, bool(R(0, 1))) self.assertEquals(True, bool(R(3, 2))) @@ -218,13 +210,6 @@ self.assertTypedEquals(0.1+0j, complex(R(1,10))) - def testRound(self): - self.assertTypedEquals(R(-200), R(-150).__round__(-2)) - self.assertTypedEquals(R(-200), R(-250).__round__(-2)) - self.assertTypedEquals(R(30), R(26).__round__(-1)) - self.assertTypedEquals(R(-2, 10), R(-15, 100).__round__(1)) - self.assertTypedEquals(R(-2, 10), R(-25, 100).__round__(1)) - def testArithmetic(self): self.assertEquals(R(1, 2), R(1, 10) + R(2, 5))

jeffrey.yasskin wrote:
Remove unused to-be-magic methods from Rational per issue 1968. Do not port this patch to py3k.
The svnmerge.py script has an option to block a revision. .../py3k$ svnmerge.py block -r60480 $ svn proplist -v ... svnmerge-blocked : /python/trunk:60480 svnmerge-integrated : /python/trunk:1-60474 ... You can make my life easier if you set the block option for me. Christian
participants (2)
-
Christian Heimes
-
jeffrey.yasskin