Type Objects¶
PyTypeObject¶The C structure of the objects used to describe built-in types.
- PyObject*
PyType_Type¶ This is the type object for type objects; it is the same object as
typeandtypes.TypeTypein the Python layer.
- int
PyType_Check(PyObject *o)¶ Return true if the objecto is a type object, including instances of typesderived from the standard type object. Return false in all other cases.
- int
PyType_CheckExact(PyObject *o)¶ Return true if the objecto is a type object, but not a subtype of thestandard type object. Return false in all other cases.
New in version 2.2.
- unsigned int
PyType_ClearCache()¶ Clear the internal lookup cache. Return the current version tag.
New in version 2.6.
- void
PyType_Modified(PyTypeObject *type)¶ Invalidate the internal lookup cache for the type and all of itssubtypes. This function must be called after any manualmodification of the attributes or base classes of the type.
New in version 2.6.
- int
PyType_HasFeature(PyObject *o, int feature)¶ Return true if the type objecto sets the featurefeature. Type featuresare denoted by single bit flags.
- int
PyType_IS_GC(PyObject *o)¶ Return true if the type object includes support for the cycle detector; thistests the type flag
Py_TPFLAGS_HAVE_GC.New in version 2.0.
- int
PyType_IsSubtype(PyTypeObject *a,PyTypeObject *b)¶ Return true ifa is a subtype ofb.
New in version 2.2.
This function only checks for actual subtypes, which means that
__subclasscheck__()is not called onb. CallPyObject_IsSubclass()to do the same check thatissubclass()would do.
- PyObject*
PyType_GenericAlloc(PyTypeObject *type, Py_ssize_t nitems)¶ - Return value: New reference.
New in version 2.2.
Changed in version 2.5:This function used an
inttype fornitems. This might requirechanges in your code for properly supporting 64-bit systems.
- PyObject*
PyType_GenericNew(PyTypeObject *type,PyObject *args,PyObject *kwds)¶ - Return value: New reference.
New in version 2.2.
- int
PyType_Ready(PyTypeObject *type)¶ Finalize a type object. This should be called on all type objects to finishtheir initialization. This function is responsible for adding inherited slotsfrom a type’s base class. Return
0on success, or return-1and sets anexception on error.New in version 2.2.
