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