Function オブジェクト¶
Functionオブジェクト固有の関数はわずかです。
-
type PyFunctionObject¶
関数に使われるCの構造体。
-
PyTypeObject PyFunction_Type¶
PyTypeObject型のインスタンスで、 Python の関数型を表します。これは Python プログラムにtypes.FunctionTypeとして公開されています。
-
int PyFunction_Check(PyObject *o)¶
o が関数オブジェクト (
PyFunction_Type型である) 場合に真を返します。パラメータはNULLにできません。この関数は常に成功します。
-
PyObject *PyFunction_New(PyObject *code, PyObject *globals)¶
- 戻り値: 新しい参照。
コードオブジェクト code に関連付けられた新しい関数オブジェクトを返します。globals はこの関数からアクセスできるグローバル変数の辞書でなければなりません。
関数のドキュメント文字列と名前はコードオブジェクトから取得されます。
__module__は globals から取得されます。 引数のデフォルト値やアノテーション、クロージャはNULLに設定されます。__qualname__はコードオブジェクトのco_qualnameフィールドと同じ値に設定されます。
-
PyObject *PyFunction_NewWithQualName(PyObject *code, PyObject *globals, PyObject *qualname)¶
- 戻り値: 新しい参照。
PyFunction_New()に似ていますが、関数オブジェクトの__qualname__属性に値をセットできます。 qualname はユニコードオブジェクトかNULLでなくてはなりません。NULLだった場合、__qualname__属性にはコードオブジェクトのco_qualnameフィールドと同じ値がセットされます。バージョン 3.3 で追加.
-
PyObject *PyFunction_GetModule(PyObject *op)¶
- 戻り値: 借用参照。
Return a borrowed reference to the
__module__attribute of the function object op. It can be NULL.This is normally a
stringcontaining the module name, but can be set to any other object by Python code.
-
PyObject *PyFunction_GetDefaults(PyObject *op)¶
- 戻り値: 借用参照。
関数オブジェクト op の引数のデフォルト値を返します。 引数のタプルか
NULLになります。
-
int PyFunction_SetDefaults(PyObject *op, PyObject *defaults)¶
関数オブジェクト op の引数のデフォルト値を設定します。 defaults は
Py_Noneかタプルでなければいけません。失敗した時は、
SystemErrorを発生させ、-1を返します。
-
PyObject *PyFunction_GetClosure(PyObject *op)¶
- 戻り値: 借用参照。
関数オブジェクト op に設定されたクロージャを返します。
NULLか cell オブジェクトのタプルです。
-
int PyFunction_SetClosure(PyObject *op, PyObject *closure)¶
関数オブジェクト op にクロージャを設定します。 closure は、
Py_Noneもしくは cell オブジェクトのタプルでなければなりません。失敗した時は、
SystemErrorを発生させ、-1を返します。
-
PyObject *PyFunction_GetAnnotations(PyObject *op)¶
- 戻り値: 借用参照。
関数オブジェクト op のアノテーションを返します。 返り値は修正可能な辞書か
NULLになります。
-
int PyFunction_SetAnnotations(PyObject *op, PyObject *annotations)¶
関数オブジェクト op のアノテーションを設定します。 annotations は辞書か、
Py_Noneでなければなりません。失敗した時は、
SystemErrorを発生させ、-1を返します。