
Method Objects
**************

There are some useful functions that are useful for working with
method objects.

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*.

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

   Return a new method object, with *func* being any callable object;
   this is the function that will be called when the method is called.
   If this method should be bound to an instance, *self* should be the
   instance and *class* should be the class of *self*, otherwise
   *self* should be *NULL* and *class* should be the class which
   provides the unbound method..

PyObject* PyMethod_Class(PyObject *meth)
    *Return value: Borrowed reference.*

   Return the class object from which the method *meth* was created;
   if this was created from an instance, it will be the class of the
   instance.

PyObject* PyMethod_GET_CLASS(PyObject *meth)
    *Return value: Borrowed reference.*

   Macro version of "PyMethod_Class()" which avoids error checking.

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* if it is
   bound, otherwise return *NULL*.

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

   Macro version of "PyMethod_Self()" which avoids error checking.

int PyMethod_ClearFreeList()

   Clear the free list. Return the total number of freed items.

   New in version 2.6.
