summaryrefslogtreecommitdiffstats
path: root/cython/property_list_client.pxi
diff options
context:
space:
mode:
authorGravatar Bryan Forbes2010-03-17 10:27:44 -0500
committerGravatar Martin Szulecki2012-03-20 23:25:54 +0100
commit68c63cc1382326e7f0cb4e6bd863427f9069ca05 (patch)
treed4094cb7f98cdb081e614c519f6cf8d0f9080c18 /cython/property_list_client.pxi
parentcfe6244f8954efce4ef12b9b4338cc0d41a9ff40 (diff)
downloadlibimobiledevice-68c63cc1382326e7f0cb4e6bd863427f9069ca05.tar.gz
libimobiledevice-68c63cc1382326e7f0cb4e6bd863427f9069ca05.tar.bz2
Added base class for more efficient error handling.
Diffstat (limited to 'cython/property_list_client.pxi')
-rw-r--r--cython/property_list_client.pxi13
1 files changed, 13 insertions, 0 deletions
diff --git a/cython/property_list_client.pxi b/cython/property_list_client.pxi
new file mode 100644
index 0000000..2689658
--- /dev/null
+++ b/cython/property_list_client.pxi
@@ -0,0 +1,13 @@
+cdef class PropertyListClient(Base):
+ cpdef send(self, plist.Node node):
+ cdef plist.Node n = node
+ self.handle_error(self._send(n._c_node))
+
+ cpdef plist.Node receive(self):
+ cdef plist.plist_t c_node = NULL
+ self.handle_error(self._receive(&c_node))
+
+ return plist.plist_t_to_node(c_node)
+
+ cdef inline int16_t _send(self, plist.plist_t node): pass
+ cdef inline int16_t _receive(self, plist.plist_t* c_node): pass