[pypy-svn] r36004 - in pypy/dist/pypy/rlib/rctypes: . test
arigo at codespeak.net
arigo at codespeak.net
Wed Dec 27 19:46:56 CET 2006
Author: arigo
Date: Wed Dec 27 19:46:54 2006
New Revision: 36004
Modified:
pypy/dist/pypy/rlib/rctypes/rstruct.py
pypy/dist/pypy/rlib/rctypes/test/test_rprimitive.py
Log:
Assignment to struct fields.
Modified: pypy/dist/pypy/rlib/rctypes/rstruct.py
==============================================================================
--- pypy/dist/pypy/rlib/rctypes/rstruct.py (original)
+++ pypy/dist/pypy/rlib/rctypes/rstruct.py Wed Dec 27 19:46:54 2006
@@ -50,5 +50,11 @@
return controller.return_value(itemobj)
getattr._annspecialcase_ = 'specialize:arg(2)'
+ def setattr(self, obj, attr, value):
+ controller = self.fieldcontrollers[attr]
+ itemobj = getattr(obj, 'ref_' + attr)()
+ controller.set_value(itemobj, value)
+ setattr._annspecialcase_ = 'specialize:arg(2)'
+
StructCTypeController.register_for_metatype(StructType)
Modified: pypy/dist/pypy/rlib/rctypes/test/test_rprimitive.py
==============================================================================
--- pypy/dist/pypy/rlib/rctypes/test/test_rprimitive.py (original)
+++ pypy/dist/pypy/rlib/rctypes/test/test_rprimitive.py Wed Dec 27 19:46:54 2006
@@ -216,7 +216,6 @@
t.view()
def test_annotate_set_primitive_structfield(self):
- py.test.skip("in-progress")
class S(Structure):
_fields_ = [('cs', c_short)]
def func(x):
More information about the Pypy-commit
mailing list