Объекты методов экземпляра¶Instance Method Objects
Метод экземпляра – это обёртка для PyCFunction и новый способ привязки PyCFunction к объекту класса. Он заменяет прежний вызов PyMethod_New(func, NULL, class).
-
PyTypeObject
PyInstanceMethod_Type¶ Этот экземпляр
PyTypeObjectпредставляет тип метода экземпляра Python. Он не доступен программам на Python.
-
int
PyInstanceMethod_Check(PyObject *o)¶ Возвращает true, если o является объектом метода экземпляра (имеет тип
PyInstanceMethod_Type). Параметр не должен бытьNULL.
-
PyObject*
PyInstanceMethod_New(PyObject *func)¶ - Возвращаемое значение: новая ссылка.
Возвращает новый объект метода экземпляра, где func – любой вызываемый объект. func – это функция, которая будет вызвана при вызове метода экземпляра.
-
PyObject*
PyInstanceMethod_Function(PyObject *im)¶ - Возвращаемое значение: заимствованная ссылка.
Возвращает объект функции, связанный с методом экземпляра im.
-
PyObject*
PyInstanceMethod_GET_FUNCTION(PyObject *im)¶ - Возвращаемое значение: заимствованная ссылка.
Макрос-версия
PyInstanceMethod_Function(), которая избегает проверки ошибок.
Объекты методов¶Method Objects
Методы – это связанные объекты функций. Методы всегда привязаны к экземпляру пользовательского класса. Несвязанные методы (методы, привязанные к объекту класса) больше не доступны.
-
PyTypeObject
PyMethod_Type¶ Этот экземпляр
PyTypeObjectпредставляет тип метода Python. Он доступен программам на Python какtypes.MethodType.
-
int
PyMethod_Check(PyObject *o)¶ Возвращает true, если o является объектом метода (имеет тип
PyMethod_Type). Параметр не должен бытьNULL.
-
PyObject*
PyMethod_New(PyObject *func, PyObject *self)¶ - Возвращаемое значение: новая ссылка.
Возвращает новый объект метода, где func – любой вызываемый объект, а self – экземпляр, к которому должен быть привязан метод. func – это функция, которая будет вызвана при вызове метода. self не должен быть
NULL.
-
PyObject*
PyMethod_Function(PyObject *meth)¶ - Возвращаемое значение: заимствованная ссылка.
Возвращает объект функции, связанный с методом meth.
-
PyObject*
PyMethod_GET_FUNCTION(PyObject *meth)¶ - Возвращаемое значение: заимствованная ссылка.
Макрос-версия
PyMethod_Function(), которая избегает проверки ошибок.
-
PyObject*
PyMethod_Self(PyObject *meth)¶ - Возвращаемое значение: заимствованная ссылка.
Возвращает экземпляр, связанный с методом meth.
-
PyObject*
PyMethod_GET_SELF(PyObject *meth)¶ - Возвращаемое значение: заимствованная ссылка.
Макрос-версия
PyMethod_Self(), которая избегает проверки ошибок.
-
int
PyMethod_ClearFreeList()¶ Очищает список свободных блоков. Возвращает общее количество освобождённых элементов.