Pārlūkot izejas kodu

py_panda: Add Dtool_GetPyTypeObject macro

This is a cleaner, future-proof way of accessing a Panda type as PyTypeObject pointer
rdb 1 gadu atpakaļ
vecāks
revīzija
ca7ba4eab3
1 mainītis faili ar 3 papildinājumiem un 0 dzēšanām
  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) && \