[pypy-svn] r76848 - pypy/branch/better-map-instances/pypy/module/cpyext
cfbolz at codespeak.net
cfbolz at codespeak.net
Fri Sep 3 11:26:42 CEST 2010
Author: cfbolz
Date: Fri Sep 3 11:26:39 2010
New Revision: 76848
Modified:
pypy/branch/better-map-instances/pypy/module/cpyext/classobject.py
Log:
adapt cpyext to new interface
Modified: pypy/branch/better-map-instances/pypy/module/cpyext/classobject.py
==============================================================================
--- pypy/branch/better-map-instances/pypy/module/cpyext/classobject.py (original)
+++ pypy/branch/better-map-instances/pypy/module/cpyext/classobject.py Fri Sep 3 11:26:39 2010
@@ -17,14 +17,18 @@
instance."""
if not PyClass_Check(space, w_class):
return PyErr_BadInternalCall(space)
- return W_InstanceObject(space, w_class, w_dict)
+ w_result = w_class.instantiate(space)
+ if w_dict is not None:
+ w_result.setdict(space, w_dict)
+ return w_result
@cpython_api([PyObject, PyObject], PyObject, error=CANNOT_FAIL)
def _PyInstance_Lookup(space, w_instance, w_name):
+ name = space.str_w(w_name)
assert isinstance(w_instance, W_InstanceObject)
- w_result = space.finditem(w_instance.w_dict, w_name)
+ w_result = w_instance.getdictvalue(space, name)
if w_result is not None:
return w_result
- return w_instance.w_class.lookup(space, w_name)
+ return w_instance.w_class.lookup(space, name)
More information about the Pypy-commit
mailing list