mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	Continue rolling back pep-3141 changes that changed behavior from 2.5. This
round included: * Revert round to its 2.6 behavior (half away from 0). * Because round, floor, and ceil always return float again, it's no longer necessary to have them delegate to __xxx___, so I've ripped that out of their implementations and the Real ABC. This also helps in implementing types that work in both 2.6 and 3.0: you return int from the __xxx__ methods, and let it get enabled by the version upgrade. * Make pow(-1, .5) raise a ValueError again.
This commit is contained in:
		
							parent
							
								
									f7476c4d46
								
							
						
					
					
						commit
						9871d8fe22
					
				
					 13 changed files with 75 additions and 252 deletions
				
			
		|  | @ -63,8 +63,8 @@ def testCeil(self): | |||
|         self.ftest('ceil(-1.5)', math.ceil(-1.5), -1) | ||||
| 
 | ||||
|         class TestCeil(object): | ||||
|             def __ceil__(self): | ||||
|                 return 42 | ||||
|             def __float__(self): | ||||
|                 return 41.3 | ||||
|         class TestNoCeil(object): | ||||
|             pass | ||||
|         self.ftest('ceil(TestCeil())', math.ceil(TestCeil()), 42) | ||||
|  | @ -123,8 +123,8 @@ def testFloor(self): | |||
|         self.ftest('floor(-1.23e167)', math.floor(-1.23e167), -1.23e167) | ||||
| 
 | ||||
|         class TestFloor(object): | ||||
|             def __floor__(self): | ||||
|                 return 42 | ||||
|             def __float__(self): | ||||
|                 return 42.3 | ||||
|         class TestNoFloor(object): | ||||
|             pass | ||||
|         self.ftest('floor(TestFloor())', math.floor(TestFloor()), 42) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Jeffrey Yasskin
						Jeffrey Yasskin