self->ob_type->tp_free(self);
}
+/**
+ * Default (but only slightly more useful than the default) implementation of cmp.
+ */
+static int py_talloc_default_cmp(PyObject *_obj1, PyObject *_obj2)
+{
+ py_talloc_Object *obj1 = (py_talloc_Object *)_obj1,
+ *obj2 = (py_talloc_Object *)_obj2;
+ if (obj1->ob_type != obj2->ob_type)
+ return (obj1->ob_type - obj2->ob_type);
+
+ return ((char *)py_talloc_get_ptr(obj1) - (char *)py_talloc_get_ptr(obj2));
+}
+
+
+
static PyTypeObject TallocObject_Type = {
.tp_name = "talloc.Object",
.tp_basicsize = sizeof(py_talloc_Object),
PyObject *PyCObject_FromTallocPtr(void *);
PyObject *PyString_FromString_check_null(const char *ptr);
-int py_talloc_default_cmp(PyObject *obj1, PyObject *obj2);
#endif /* _PY_TALLOC_H_ */
return (PyObject *)ret;
}
-/**
- * Default (but only slightly more useful than the default) implementation of cmp.
- */
-int py_talloc_default_cmp(PyObject *_obj1, PyObject *_obj2)
-{
- py_talloc_Object *obj1 = (py_talloc_Object *)_obj1,
- *obj2 = (py_talloc_Object *)_obj2;
- if (obj1->ob_type != obj2->ob_type)
- return (obj1->ob_type - obj2->ob_type);
-
- return ((char *)py_talloc_get_ptr(obj1) - (char *)py_talloc_get_ptr(obj2));
-}
-
static void py_cobject_talloc_free(void *ptr)
{
talloc_free(ptr);