Explorar el Código

py_panda: Add Dtool_GetPyTypeObject macro

This is a cleaner, future-proof way of accessing a Panda type as PyTypeObject pointer
rdb hace 1 año
padre
commit
ca7ba4eab3
Se han modificado 1 ficheros con 3 adiciones y 0 borrados
  1. 3 0
      dtool/src/interrogatedb/py_panda.h

+ 3 - 0
dtool/src/interrogatedb/py_panda.h

@@ -161,6 +161,9 @@ static void Dtool_FreeInstance_##CLASS_NAME(PyObject *self) {\
   Py_TYPE(self)->tp_free(self);\
 }
 
+// Extract the PyTypeObject pointer corresponding to a Dtool_PyTypedObject.
+#define Dtool_GetPyTypeObject(type) (&(type)->_PyType)
+
 // Use DtoolInstance_Check to check whether a PyObject* is a DtoolInstance.
 #define DtoolInstance_Check(obj) \
   (Py_TYPE(obj)->tp_basicsize >= (int)sizeof(Dtool_PyInstDef) && \