Type Objects

  • PyTypeObject

    • 用于描述内置类型的对象的 C 结构。
  • PyObject* PyType_Type

    • 这是类型对象的类型对象。它与 Python 层中的typetypes.TypeType是同Pair象。
  • int PyType_Check(PyObject ** o *)

    • 如果对象* o *是类型对象,包括从标准类型对象派生的类型的实例,则返回 true。在其他所有情况下,返回 false。
  • int PyType_CheckExact(PyObject ** o *)

    • 如果对象* o *是类型对象,但不是标准类型对象的子类型,则返回 true。在其他所有情况下,返回 false。

2.2 版中的新Function。

  • unsigned int PyType_ClearCache()
    • 清除内部查找缓存。返回当前版本标签。

2.6 版的新Function。

  • 无效PyType_Modified(PyTypeObject *类型)
    • 使类型及其所有子类型的内部查找缓存无效。在手动修改类型的属性或 Base Class 后,必须调用此函数。

2.6 版的新Function。

  • int PyType_HasFeature(PyObject ** o *,int * feature *)

    • 如果类型对象* o 设置Function feature *,则返回 true。类型 Feature 由单个位标志表示。
  • int PyType_IS_GC(PyObject ** o *)

    • 如果类型对象包括对循环检测器的支持,则返回 true;否则,返回 true。这将测试类型标志Py_TPFLAGS_HAVE_GC

2.0 版中的新Function。

2.2 版中的新Function。

此函数仅检查实际的子类型,这意味着不会在* b *上调用subclasscheck()。呼叫PyObject_IsSubclass()进行与issubclass()相同的检查。

  • PyObject * PyType_GenericAlloc(PyTypeObject ** type *,Py_ssize_t * nitems *)
    • 返回值:新参考.

2.2 版中的新Function。

在版本 2.5 中更改:此函数对* nitems *使用了int类型。这可能需要更改您的代码以正确支持 64 位系统。

2.2 版中的新Function。

  • int PyType_Ready(PyTypeObject *类型)
    • 完成一个类型对象。应该在所有类型对象上调用它以完成其初始化。该函数负责从类型的 Base Class 添加继承的插槽。成功返回0,或者返回-1并设置错误异常。

2.2 版中的新Function。