Объекты методов¶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, PyObject *class)¶
- Возвращаемое значение: новая ссылка.
Возвращает новый объект метода, где func – любой вызываемый объект; это функция, которая будет вызвана при вызове метода. Если метод должен быть привязан к экземпляру, self должен быть экземпляром, а class – классом self; в противном случае self должен быть NULL, а class – классом, предоставляющим непривязанный метод..
- PyObject* PyMethod_Class(PyObject *meth)¶
- Возвращаемое значение: заимствованная ссылка.
Возвращает объект класса, из которого был создан метод meth; если он был создан из экземпляра, это будет класс экземпляра.
- PyObject* PyMethod_GET_CLASS(PyObject *meth)¶
- Возвращаемое значение: заимствованная ссылка.
Макроверсия PyMethod_Class(), не выполняющая проверку ошибок.
- PyObject* PyMethod_Function(PyObject *meth)¶
- Возвращаемое значение: заимствованная ссылка.
Возвращает объект функции, связанный с методом meth.
- PyObject* PyMethod_GET_FUNCTION(PyObject *meth)¶
- Возвращаемое значение: заимствованная ссылка.
Макроверсия PyMethod_Function(), которая не выполняет проверку ошибок.
- PyObject* PyMethod_Self(PyObject *meth)¶
- Возвращаемое значение: заимствованная ссылка.
Возвращает экземпляр, связанный с методом meth, если он привязан; в противном случае возвращает NULL.
- PyObject* PyMethod_GET_SELF(PyObject *meth)¶
- Возвращаемое значение: заимствованная ссылка.
Макроверсия PyMethod_Self(), которая не выполняет проверку ошибок.
- int PyMethod_ClearFreeList()¶
Очищает список свободных элементов. Возвращает общее количество освобождённых элементов.
Новое в версии 2.6.