[pypy-svn] r4950 - pypy/branch/src-newobjectmodel/pypy/objspace/std

arigo at codespeak.net arigo at codespeak.net
Sat Jun 5 13:44:37 CEST 2004


Author: arigo
Date: Sat Jun  5 13:44:36 2004
New Revision: 4950

Modified:
   pypy/branch/src-newobjectmodel/pypy/objspace/std/default.py
   pypy/branch/src-newobjectmodel/pypy/objspace/std/dictobject.py
   pypy/branch/src-newobjectmodel/pypy/objspace/std/listobject.py
   pypy/branch/src-newobjectmodel/pypy/objspace/std/objectobject.py
   pypy/branch/src-newobjectmodel/pypy/objspace/std/objecttype.py
   pypy/branch/src-newobjectmodel/pypy/objspace/std/objspace.py
Log:
__init__() was not present for built-in types.


Modified: pypy/branch/src-newobjectmodel/pypy/objspace/std/default.py
==============================================================================
--- pypy/branch/src-newobjectmodel/pypy/objspace/std/default.py	(original)
+++ pypy/branch/src-newobjectmodel/pypy/objspace/std/default.py	Sat Jun  5 13:44:36 2004
@@ -16,6 +16,12 @@
 def not__ANY(space, w_obj):
     return space.newbool(not space.is_true(w_obj))
 
+# __init__ should succeed if called internally as a multimethod
+
+def init__ANY(space, w_obj, w_args, w_kwds):
+    pass
+
+
 # __nonzero__ falls back to __len__
 
 ##def is_true__ANY(space, w_obj):

Modified: pypy/branch/src-newobjectmodel/pypy/objspace/std/dictobject.py
==============================================================================
--- pypy/branch/src-newobjectmodel/pypy/objspace/std/dictobject.py	(original)
+++ pypy/branch/src-newobjectmodel/pypy/objspace/std/dictobject.py	Sat Jun  5 13:44:36 2004
@@ -85,7 +85,7 @@
         result[space.unwrap(w_key)] = space.unwrap(cell.get())
     return result
 
-def object_init__Dict(space, w_dict, w_args, w_kwds):
+def init__Dict(space, w_dict, w_args, w_kwds):
     dict_clear__Dict(space, w_dict)
     args = space.unpackiterable(w_args)
     if len(args) == 0:

Modified: pypy/branch/src-newobjectmodel/pypy/objspace/std/listobject.py
==============================================================================
--- pypy/branch/src-newobjectmodel/pypy/objspace/std/listobject.py	(original)
+++ pypy/branch/src-newobjectmodel/pypy/objspace/std/listobject.py	Sat Jun  5 13:44:36 2004
@@ -37,7 +37,7 @@
     items = [space.unwrap(w_item) for w_item in w_list.ob_item[:w_list.ob_size]]
     return list(items)
 
-def object_init__List(space, w_list, w_args, w_kwds):
+def init__List(space, w_list, w_args, w_kwds):
     if space.is_true(w_kwds):
         raise OperationError(space.w_TypeError,
                              space.wrap("no keyword arguments expected"))

Modified: pypy/branch/src-newobjectmodel/pypy/objspace/std/objectobject.py
==============================================================================
--- pypy/branch/src-newobjectmodel/pypy/objspace/std/objectobject.py	(original)
+++ pypy/branch/src-newobjectmodel/pypy/objspace/std/objectobject.py	Sat Jun  5 13:44:36 2004
@@ -13,8 +13,7 @@
 delegate__ANY.result_class = W_ObjectObject
 delegate__ANY.priority = PRIORITY_PARENT_TYPE
 
-#def object_init__Object(space, w_object, w_args, w_kwds):
-#    pass
+# ____________________________________________________________
 
 
 register_all(vars())

Modified: pypy/branch/src-newobjectmodel/pypy/objspace/std/objecttype.py
==============================================================================
--- pypy/branch/src-newobjectmodel/pypy/objspace/std/objecttype.py	(original)
+++ pypy/branch/src-newobjectmodel/pypy/objspace/std/objecttype.py	Sat Jun  5 13:44:36 2004
@@ -3,14 +3,6 @@
 from pypy.objspace.std.register_all import register_all
 from pypy.objspace.std.objspace import StdObjSpace
 
-object_init = MultiMethod('__init__', 1, varargs=True, keywords=True)
-
-def object_init__ANY(space, w_obj, w_args, w_kwds):
-    pass
-
-register_all(vars(), globals())
-
-# ____________________________________________________________
 
 def descr__repr__(space, w_obj):
     w = space.wrap

Modified: pypy/branch/src-newobjectmodel/pypy/objspace/std/objspace.py
==============================================================================
--- pypy/branch/src-newobjectmodel/pypy/objspace/std/objspace.py	(original)
+++ pypy/branch/src-newobjectmodel/pypy/objspace/std/objspace.py	Sat Jun  5 13:44:36 2004
@@ -315,6 +315,7 @@
         is_true = MultiMethod('nonzero', 1, [])   # returns an unwrapped bool
         issubtype = MultiMethod('issubtype', 2, [])
         id = MultiMethod('id', 1, [])
+        init = MultiMethod('__init__', 1, varargs=True, keywords=True)
 
     unwrap = MM.unwrap
     delegate = MM.delegate



More information about the Pypy-commit mailing list