インスタンスメソッドオブジェクト(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¶
PyTypeObject
のインスタンスは Python のインスタンスメソッドの型を表現します。これは Python のプログラムには公開されません。
-
int PyInstanceMethod_Check(PyObject *o)¶
o がインスタンスメソッドオブジェクト (
PyInstanceMethod_Type
型である) 場合に真を返します。パラメータはNULL
にできません。この関数は常に成功します。
-
PyObject *PyInstanceMethod_New(PyObject *func)¶
- 戻り値: 新しい参照。
任意の呼び出し可能オブジェクト func を使った新たなインスタンスメソッドオブジェクトを返します。func はインスタンスメソッドが呼び出されたときに呼び出される関数です。
-
PyObject *PyInstanceMethod_GET_FUNCTION(PyObject *im)¶
- 戻り値: 借用参照。
PyInstanceMethod_Function()
のマクロ版で、エラーチェックを行いません。
メソッドオブジェクト¶
メソッドは関数オブジェクトに束縛されています。メソッドは常にあるユーザー定義のクラスに束縛されているのです。束縛されていないメソッド(クラスオブジェクトに束縛されたメソッド)は利用することができません。
-
PyTypeObject PyMethod_Type¶
この
PyTypeObject
のインスタンスは Python のメソッド型を表現します。このオブジェクトは、types.MethodType
として Python プログラムに公開されています。
-
int PyMethod_Check(PyObject *o)¶
o がメソッドオブジェクト (
PyMethod_Type
型である) 場合に真を返します。パラメータはNULL
にできません。この関数は常に成功します。
-
PyObject *PyMethod_New(PyObject *func, PyObject *self)¶
- 戻り値: 新しい参照。
任意の呼び出し可能オブジェクト func とメソッドが束縛されるべきインスタンス self を使った新たなメソッドオブジェクトを返します。 関数 func は、メソッドが呼び出された時に呼び出されるオブジェクトです。 self は
NULL
にできません。
-
PyObject *PyMethod_GET_FUNCTION(PyObject *meth)¶
- 戻り値: 借用参照。
PyMethod_Function()
のマクロ版で、エラーチェックを行いません。
-
PyObject *PyMethod_GET_SELF(PyObject *meth)¶
- 戻り値: 借用参照。
PyMethod_Self()
のマクロ版で、エラーチェックを行いません。