Method Objects

有一些有用的Function对于使用方法对象很有用。

  • PyTypeObject PyMethod_Type
    • PyTypeObject的此实例表示 Python 方法类型。这对于types.MethodType公开给 Python 程序。

返回一个新的方法对象,* func 是任何可调用的对象;这是在调用方法时将要调用的函数。如果此方法应绑定到实例,则 self 应该是实例,而 class 应该是 self 的类,否则 self 应该是 NULL ,而 class *应该是提供以下内容的类:未绑定方法

返回创建方法* meth *的类对象;如果是从实例创建的,则它将是该实例的类。

  • PyObject * PyMethod_GET_CLASS(PyObject ** meth *)
    • *返回值:借用参考。

PyMethod_Class()的宏版本,可避免错误检查。

返回与方法* meth *关联的函数对象。

  • PyObject * PyMethod_GET_FUNCTION(PyObject ** meth *)
    • *返回值:借用参考。

PyMethod_Function()的宏版本,可避免错误检查。

返回与方法* meth 关联的实例(如果已绑定),否则返回 NULL *。

PyMethod_Self()的宏版本,可避免错误检查。

  • int PyMethod_ClearFreeList()
    • 清除空闲列表。返回释放的项目总数。

2.6 版的新Function。