メソッドオブジェクト¶
C API にはメソッドオブジェクトを扱うのに便利な関数があります。
-
PyTypeObject
PyMethod_Type
¶ この
PyTypeObject
のインスタンスは Python のメソッド型を表現します。このオブジェクトは、types.MethodType
として Python プログラムに公開されています。
-
int
PyMethod_Check
(PyObject *o)¶ o がメソッドオブジェクト (
PyMethod_Type
型である) 場合に真を返します。パラメータは NULL にできません。
-
PyObject*
PyMethod_New
(PyObject *func, PyObject *self, PyObject *class)¶ - Return value: New reference.
任意の呼び出し可能オブジェクト func を使った新たなメソッドオブジェクトを返します; 関数 func は、メソッドが呼び出された時に呼び出されるオブジェクトです。このメソッドをインスタンスに束縛 (bind) したい場合、 self をインスタンス自体にして、 class を self のクラスにしなければなりません。それ以外の場合は self を NULL に、 class を非束縛メソッドを提供しているクラスにしなければなりません。
-
PyObject*
PyMethod_Class
(PyObject *meth)¶ - Return value: Borrowed reference.
メソッドオブジェクト meth を生成したクラスオブジェクトを返します; インスタンスがメソッドオブジェクトを生成した場合、戻り値はインスタンスのクラスになります。
-
PyObject*
PyMethod_GET_CLASS
(PyObject *meth)¶ - Return value: Borrowed reference.
PyMethod_Class()
をマクロで実装したバージョンで、エラーチェックを行いません。
-
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 が束縛メソッドの場合には、メソッドに関連付けられているインスタンスを返します。それ以外の場合には NULL を返します。
-
PyObject*
PyMethod_GET_SELF
(PyObject *meth)¶ - Return value: Borrowed reference.
PyMethod_Self()
のマクロ版で、エラーチェックを行いません。
-
int
PyMethod_ClearFreeList
()¶ free list をクリアします。解放された要素数を返します。
バージョン 2.6 で追加.