[pypy-svn] r8616 - pypy/dist/pypy/objspace/std

ludal at codespeak.net ludal at codespeak.net
Wed Jan 26 16:45:51 CET 2005


Author: ludal
Date: Wed Jan 26 16:45:51 2005
New Revision: 8616

Modified:
   pypy/dist/pypy/objspace/std/objspace.py
   pypy/dist/pypy/objspace/std/sliceobject.py
Log:
allow unwrapping of slice object for the purpose of slicing unicode (faked) objects


Modified: pypy/dist/pypy/objspace/std/objspace.py
==============================================================================
--- pypy/dist/pypy/objspace/std/objspace.py	(original)
+++ pypy/dist/pypy/objspace/std/objspace.py	Wed Jan 26 16:45:51 2005
@@ -285,6 +285,8 @@
 
     def newslice(self, w_start, w_end, w_step):
         # w_step may be a real None
+        if w_step is None:
+            w_step = self.w_None
         return W_SliceObject(self, w_start, w_end, w_step)
 
     def newstring(self, chars_w):

Modified: pypy/dist/pypy/objspace/std/sliceobject.py
==============================================================================
--- pypy/dist/pypy/objspace/std/sliceobject.py	(original)
+++ pypy/dist/pypy/objspace/std/sliceobject.py	Wed Jan 26 16:45:51 2005
@@ -43,4 +43,7 @@
     raise OperationError(space.w_TypeError,
                          space.wrap("unhashable type"))
 
+def unwrap__Slice(space, w_slice):
+    return slice(space.unwrap(w_slice.w_start), space.unwrap(w_slice.w_stop), space.unwrap(w_slice.w_step))
+
 register_all(vars())



More information about the Pypy-commit mailing list