mirror of
				https://github.com/python/cpython.git
				synced 2025-11-04 03:44:55 +00:00 
			
		
		
		
	svn+ssh://pythondev@svn.python.org/python/trunk ........ r74074 | georg.brandl | 2009-07-18 05:03:10 -0400 (Sat, 18 Jul 2009) | 1 line #6513: fix example code: warning categories are classes, not instances. ........ r74077 | georg.brandl | 2009-07-18 05:43:40 -0400 (Sat, 18 Jul 2009) | 1 line #6489: fix an ambiguity in getiterator() documentation. ........ r74111 | benjamin.peterson | 2009-07-20 09:30:10 -0400 (Mon, 20 Jul 2009) | 1 line remove docs for deprecated -p option ........ r74188 | benjamin.peterson | 2009-07-23 10:25:31 -0400 (Thu, 23 Jul 2009) | 1 line use bools ........ r74192 | georg.brandl | 2009-07-24 12:28:38 -0400 (Fri, 24 Jul 2009) | 1 line Fix arg types of et#. ........ r74193 | georg.brandl | 2009-07-24 12:46:38 -0400 (Fri, 24 Jul 2009) | 1 line Dont put "void" in signature for nullary functions. ........ r74200 | georg.brandl | 2009-07-25 09:02:15 -0400 (Sat, 25 Jul 2009) | 1 line #6571: add index entries for more operators. ........ r74252 | georg.brandl | 2009-07-29 12:06:31 -0400 (Wed, 29 Jul 2009) | 1 line #6593: fix link targets. ........ r74253 | georg.brandl | 2009-07-29 12:09:17 -0400 (Wed, 29 Jul 2009) | 1 line #6591: add reference to ioctl in fcntl module for platforms other than Windows. ........ r74258 | georg.brandl | 2009-07-29 12:57:05 -0400 (Wed, 29 Jul 2009) | 1 line Add a link to readline, and mention IPython and bpython. ........ r74259 | georg.brandl | 2009-07-29 13:07:21 -0400 (Wed, 29 Jul 2009) | 1 line Fix some markup and small factual glitches found by M. Markert. ........ r74260 | georg.brandl | 2009-07-29 13:15:20 -0400 (Wed, 29 Jul 2009) | 1 line Fix a few markup glitches. ........ r74261 | georg.brandl | 2009-07-29 13:50:25 -0400 (Wed, 29 Jul 2009) | 1 line Rewrite the section about classes a bit; mostly tidbits, and a larger update to the section about "private" variables to reflect the Pythonic consensus better. ........
		
			
				
	
	
		
			100 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			100 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
.. highlightlang:: c
 | 
						|
 | 
						|
.. _instancemethod-objects:
 | 
						|
 | 
						|
Instance Method Objects
 | 
						|
-----------------------
 | 
						|
 | 
						|
.. index:: object: instancemethod
 | 
						|
 | 
						|
An instance method is a wrapper for a :cdata:`PyCFunction` and the new way
 | 
						|
to bind a :cdata:`PyCFunction` to a class object. It replaces the former call
 | 
						|
``PyMethod_New(func, NULL, class)``.
 | 
						|
 | 
						|
 | 
						|
.. cvar:: PyTypeObject PyInstanceMethod_Type
 | 
						|
 | 
						|
   This instance of :ctype:`PyTypeObject` represents the Python instance
 | 
						|
   method type. It is not exposed to Python programs.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: int PyInstanceMethod_Check(PyObject *o)
 | 
						|
 | 
						|
   Return true if *o* is an instance method object (has type
 | 
						|
   :cdata:`PyInstanceMethod_Type`).  The parameter must not be *NULL*.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyInstanceMethod_New(PyObject *func)
 | 
						|
 | 
						|
   Return a new instance method object, with *func* being any callable object
 | 
						|
   *func* is is the function that will be called when the instance method is
 | 
						|
   called.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyInstanceMethod_Function(PyObject *im)
 | 
						|
 | 
						|
   Return the function object associated with the instance method *im*.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyInstanceMethod_GET_FUNCTION(PyObject *im)
 | 
						|
 | 
						|
   Macro version of :cfunc:`PyInstanceMethod_Function` which avoids error checking.
 | 
						|
 | 
						|
 | 
						|
.. _method-objects:
 | 
						|
 | 
						|
Method Objects
 | 
						|
--------------
 | 
						|
 | 
						|
.. index:: object: method
 | 
						|
 | 
						|
Methods are bound function objects. Methods are always bound to an instance of
 | 
						|
an user-defined class. Unbound methods (methods bound to a class object) are
 | 
						|
no longer available.
 | 
						|
 | 
						|
 | 
						|
.. cvar:: PyTypeObject PyMethod_Type
 | 
						|
 | 
						|
   .. index:: single: MethodType (in module types)
 | 
						|
 | 
						|
   This instance of :ctype:`PyTypeObject` represents the Python method type.  This
 | 
						|
   is exposed to Python programs as ``types.MethodType``.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: int PyMethod_Check(PyObject *o)
 | 
						|
 | 
						|
   Return true if *o* is a method object (has type :cdata:`PyMethod_Type`).  The
 | 
						|
   parameter must not be *NULL*.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyMethod_New(PyObject *func, PyObject *self)
 | 
						|
 | 
						|
   Return a new method object, with *func* being any callable object and *self*
 | 
						|
   the instance the method should be bound. *func* is is the function that will
 | 
						|
   be called when the method is called. *self* must not be *NULL*.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyMethod_Function(PyObject *meth)
 | 
						|
 | 
						|
   Return the function object associated with the method *meth*.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyMethod_GET_FUNCTION(PyObject *meth)
 | 
						|
 | 
						|
   Macro version of :cfunc:`PyMethod_Function` which avoids error checking.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyMethod_Self(PyObject *meth)
 | 
						|
 | 
						|
   Return the instance associated with the method *meth*.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: PyObject* PyMethod_GET_SELF(PyObject *meth)
 | 
						|
 | 
						|
   Macro version of :cfunc:`PyMethod_Self` which avoids error checking.
 | 
						|
 | 
						|
 | 
						|
.. cfunction:: int PyMethod_ClearFreeList()
 | 
						|
 | 
						|
   Clear the free list. Return the total number of freed items.
 | 
						|
 |