This document is for an old version of Python that is no longer supported. You should upgrade, and read the Python documentation for the current stable release.

# Об’єкти методу екземпляра

An instance method is a wrapper for a `PyCFunction` and the new way to bind a `PyCFunction` to a class object. It replaces the former call `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()`, яка уникає перевірки помилок.