Author: Carl Friedrich Bolz <[email protected]>
Branch: reflex-support
Changeset: r45614:65d04e815adb
Date: 2011-07-15 13:25 +0200
http://bitbucket.org/pypy/pypy/changeset/65d04e815adb/

Log:    (arigo, cfbolz): simplify

diff --git a/pypy/module/cppyy/converter.py b/pypy/module/cppyy/converter.py
--- a/pypy/module/cppyy/converter.py
+++ b/pypy/module/cppyy/converter.py
@@ -13,14 +13,11 @@
 
 
 def get_rawobject(space, w_obj):
-    if not space.eq_w(w_obj, space.w_None):
-        from pypy.module.cppyy.interp_cppyy import W_CPPInstance
-        cpp_instance = space.interp_w(W_CPPInstance, w_obj)
-        if cpp_instance:
-            assert lltype.typeOf(cpp_instance.rawobject) == rffi.VOIDP
-            return cpp_instance.rawobject
-        else:
-            xxx
+    from pypy.module.cppyy.interp_cppyy import W_CPPInstance
+    cpp_instance = space.interp_w(W_CPPInstance, w_obj, can_be_None=True)
+    if cpp_instance:
+        assert lltype.typeOf(cpp_instance.rawobject) == rffi.VOIDP
+        return cpp_instance.rawobject
     return lltype.nullptr(rffi.VOIDP.TO)
 
 def _direct_ptradd(ptr, offset):
diff --git a/pypy/module/cppyy/test/test_cppyy.py 
b/pypy/module/cppyy/test/test_cppyy.py
--- a/pypy/module/cppyy/test/test_cppyy.py
+++ b/pypy/module/cppyy/test/test_cppyy.py
@@ -114,6 +114,9 @@
         e2.destruct()
         assert t.get_overload("getCount").call(None, None) == 0
 
+
+        raises(TypeError, t.get_overload("addDataToInt").call, 41, None, 4)
+
     def test_example01memory(self):
         """Test memory destruction and integrity."""
 
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to