GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Table of Contents
  • Instance Method Objects
  • Function Objects
  • Cell Objects
  • Report a bug
  • Improve this page
  • Show source
  • index
  • modules
  • Python
  • 3.16.0a2 documentation
  • Python/C API reference manual
  • Concrete Objects Layer

This view

  • Original page
  • New address

GeezerVison is showing docs.python.org — Instance Method Objects

Instance Method Objects¶

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¶

This instance of PyTypeObject represents the Python instance method type. It is not exposed to Python programs.

int PyInstanceMethod_Check(PyObject *o)¶

Return true if o is an instance method object (has type PyInstanceMethod_Type). The parameter must not be NULL. This function always succeeds.

PyObject *PyInstanceMethod_New(PyObject *func)¶
Return value: New reference.

Return a new instance method object, with func being any callable object. func is the function that will be called when the instance method is called.

PyObject *PyInstanceMethod_Function(PyObject *im)¶
Return value: Borrowed reference.

Return the function object associated with the instance method im.

PyObject *PyInstanceMethod_GET_FUNCTION(PyObject *im)¶
Return value: Borrowed reference.

Macro version of PyInstanceMethod_Function() which avoids error checking.

Method Objects¶

Methods are bound function objects. Methods are always bound to an instance of a user-defined class. Unbound methods (methods bound to a class object) are no longer available.

PyTypeObject PyMethod_Type¶

This instance of PyTypeObject represents the Python method type. This is exposed to Python programs as types.MethodType.

int PyMethod_Check(PyObject *o)¶

Return true if o is a method object (has type PyMethod_Type). The parameter must not be NULL. This function always succeeds.

PyObject *PyMethod_New(PyObject *func, PyObject *self)¶
Return value: New reference.

Return a new method object, with func being any callable object and self the instance the method should be bound. func is the function that will be called when the method is called. self must not be NULL.

PyObject *PyMethod_Function(PyObject *meth)¶
Return value: Borrowed reference.

Return the function object associated with the method meth.

PyObject *PyMethod_GET_FUNCTION(PyObject *meth)¶
Return value: Borrowed reference.

Macro version of PyMethod_Function() which avoids error checking.

PyObject *PyMethod_Self(PyObject *meth)¶
Return value: Borrowed reference.

Return the instance associated with the method meth.

PyObject *PyMethod_GET_SELF(PyObject *meth)¶
Return value: Borrowed reference.

Macro version of PyMethod_Self() which avoids error checking.

© Copyright 2001 Python Software Foundation.
This page is licensed under the Python Software Foundation License Version 2.
Examples, recipes, and other code in the documentation are additionally licensed under the Zero Clause BSD License.
See History and License for more information.

The Python Software Foundation is a non-profit corporation. Please donate.

Last updated on Nov 12, 2026 (21:32 UTC). Found a bug?
Created using Sphinx 9.1.1.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.