[pypy-svn] r10021 - pypy/dist/pypy/objspace/std
tismer at codespeak.net
tismer at codespeak.net
Mon Mar 21 21:21:54 CET 2005
Author: tismer
Date: Mon Mar 21 21:21:53 2005
New Revision: 10021
Modified:
pypy/dist/pypy/objspace/std/floattype.py
pypy/dist/pypy/objspace/std/inttype.py
pypy/dist/pypy/objspace/std/longtype.py
pypy/dist/pypy/objspace/std/stringtype.py
pypy/dist/pypy/objspace/std/tupletype.py
Log:
__getnewargs__ to make pickle and Samuele's tool happy
Modified: pypy/dist/pypy/objspace/std/floattype.py
==============================================================================
--- pypy/dist/pypy/objspace/std/floattype.py (original)
+++ pypy/dist/pypy/objspace/std/floattype.py Mon Mar 21 21:21:53 2005
@@ -19,8 +19,13 @@
w_obj.__init__(space, value)
return w_obj
+def descr__getnewargs__(space, w_obj):
+ from pypy.objspace.std.floatobject import W_FloatObject
+ return space.newtuple([W_FloatObject(space, w_obj.floatval)])
+
# ____________________________________________________________
float_typedef = StdTypeDef("float",
__new__ = newmethod(descr__new__),
+ __getnewargs__ = newmethod(descr__getnewargs__),
)
Modified: pypy/dist/pypy/objspace/std/inttype.py
==============================================================================
--- pypy/dist/pypy/objspace/std/inttype.py (original)
+++ pypy/dist/pypy/objspace/std/inttype.py Mon Mar 21 21:21:53 2005
@@ -70,6 +70,7 @@
def descr__getnewargs__(space, w_obj):
from pypy.objspace.std.intobject import W_IntObject
return space.newtuple([W_IntObject(space, w_obj.intval)])
+
# ____________________________________________________________
int_typedef = StdTypeDef("int",
Modified: pypy/dist/pypy/objspace/std/longtype.py
==============================================================================
--- pypy/dist/pypy/objspace/std/longtype.py (original)
+++ pypy/dist/pypy/objspace/std/longtype.py Mon Mar 21 21:21:53 2005
@@ -53,10 +53,15 @@
w_obj.__init__(space, value)
return w_obj
+def descr__getnewargs__(space, w_obj):
+ from pypy.objspace.std.longobject import W_LongObject
+ return space.newtuple([W_LongObject(space, w_obj.longval)])
+
# ____________________________________________________________
long_typedef = StdTypeDef("long",
__new__ = newmethod(descr__new__),
+ __getnewargs__ = newmethod(descr__getnewargs__),
)
# hack to allow automatic int to long conversion: the int.__xyz__ methods
# will fall back to their long.__xyz__ counterparts if they fail
Modified: pypy/dist/pypy/objspace/std/stringtype.py
==============================================================================
--- pypy/dist/pypy/objspace/std/stringtype.py (original)
+++ pypy/dist/pypy/objspace/std/stringtype.py Mon Mar 21 21:21:53 2005
@@ -49,9 +49,14 @@
w_obj.__init__(space, value)
return w_obj
+def descr__getnewargs__(space, w_obj):
+ from pypy.objspace.std.stringobject import W_StringObject
+ return space.newtuple([W_StringObject(space, w_obj._value)])
+
# ____________________________________________________________
str_typedef = StdTypeDef("str", basestring_typedef,
__new__ = newmethod(descr__new__),
+ __getnewargs__ = newmethod(descr__getnewargs__),
)
str_typedef.registermethods(globals())
Modified: pypy/dist/pypy/objspace/std/tupletype.py
==============================================================================
--- pypy/dist/pypy/objspace/std/tupletype.py (original)
+++ pypy/dist/pypy/objspace/std/tupletype.py Mon Mar 21 21:21:53 2005
@@ -14,8 +14,13 @@
w_obj.__init__(space, tuple_w)
return w_obj
+def descr__getnewargs__(space, w_obj):
+ from pypy.objspace.std.tupleobject import W_TupleObject
+ return space.newtuple([W_TupleObject(space, w_obj.wrappeditems)])
+
# ____________________________________________________________
tuple_typedef = StdTypeDef("tuple",
__new__ = newmethod(descr__new__),
+ __getnewargs__ = newmethod(descr__getnewargs__),
)
More information about the Pypy-commit
mailing list