メソッドオブジェクト
メソッドオブジェクトの操作に役立ついくつかの便利な関数があります。
- PyTypeObject PyMethod_Type
- PyTypeObject のこのインスタンスは、Pythonメソッドタイプを表します。 これは、
types.MethodType
としてPythonプログラムに公開されています。
- int PyMethod_Check(PyObject *o)
- o がメソッドオブジェクト(タイプ PyMethod_Type )の場合はtrueを返します。 パラメータは NULL であってはなりません。
- func が呼び出し可能なオブジェクトである新しいメソッドオブジェクトを返します。 これは、メソッドが呼び出されたときに呼び出される関数です。 このメソッドをインスタンスにバインドする必要がある場合は、 self をインスタンスにし、 class を self のクラスにする必要があります。それ以外の場合は、 self NULL である必要があり、 class は非バインドメソッドを提供するクラスである必要があります。
- メソッド meth が作成されたクラスオブジェクトを返します。 これがインスタンスから作成された場合、それはインスタンスのクラスになります。
- エラーチェックを回避する PyMethod_Class()のマクロバージョン。
- メソッド meth に関連付けられた関数オブジェクトを返します。
- エラーチェックを回避する PyMethod_Function()のマクロバージョン。
- メソッド meth に関連付けられているインスタンスがバインドされている場合はそれを返し、そうでない場合は NULL を返します。
- エラーチェックを回避する PyMethod_Self()のマクロバージョン。
- int PyMethod_ClearFreeList()
フリーリストをクリアします。 解放されたアイテムの総数を返します。
バージョン2.6の新機能。