Объекты метода экземпляра¶
Метод экземпляра - это обертка для 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)¶ - 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)¶ Возвращает true, если 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()
, позволяющая избежать проверки ошибок.