66 lines
2.6 KiB
Cython
66 lines
2.6 KiB
Cython
|
from .object cimport PyObject
|
||
|
|
||
|
cdef extern from "Python.h":
|
||
|
|
||
|
############################################################################
|
||
|
# 7.5.3 Function Objects
|
||
|
############################################################################
|
||
|
# There are a few functions specific to Python functions.
|
||
|
|
||
|
# PyFunctionObject
|
||
|
#
|
||
|
# The C structure used for functions.
|
||
|
|
||
|
# PyTypeObject PyFunction_Type
|
||
|
#
|
||
|
# This is an instance of PyTypeObject and represents the Python
|
||
|
# function type. It is exposed to Python programmers as
|
||
|
# types.FunctionType.
|
||
|
|
||
|
bint PyFunction_Check(object o)
|
||
|
# Return true if o is a function object (has type
|
||
|
# PyFunction_Type). The parameter must not be NULL.
|
||
|
|
||
|
object PyFunction_New(object code, object globals)
|
||
|
# Return value: New reference.
|
||
|
# Return a new function object associated with the code object
|
||
|
# code. globals must be a dictionary with the global variables
|
||
|
# accessible to the function.
|
||
|
# The function's docstring, name and __module__ are retrieved from
|
||
|
# the code object, the argument defaults and closure are set to
|
||
|
# NULL.
|
||
|
|
||
|
PyObject* PyFunction_GetCode(object op) except? NULL
|
||
|
# Return value: Borrowed reference.
|
||
|
# Return the code object associated with the function object op.
|
||
|
|
||
|
PyObject* PyFunction_GetGlobals(object op) except? NULL
|
||
|
# Return value: Borrowed reference.
|
||
|
# Return the globals dictionary associated with the function object op.
|
||
|
|
||
|
PyObject* PyFunction_GetModule(object op) except? NULL
|
||
|
# Return value: Borrowed reference.
|
||
|
# Return the __module__ attribute of the function object op. This
|
||
|
# is normally a string containing the module name, but can be set
|
||
|
# to any other object by Python code.
|
||
|
|
||
|
PyObject* PyFunction_GetDefaults(object op) except? NULL
|
||
|
# Return value: Borrowed reference.
|
||
|
# Return the argument default values of the function object
|
||
|
# op. This can be a tuple of arguments or NULL.
|
||
|
|
||
|
int PyFunction_SetDefaults(object op, object defaults) except -1
|
||
|
# Set the argument default values for the function object
|
||
|
# op. defaults must be Py_None or a tuple.
|
||
|
# Raises SystemError and returns -1 on failure.
|
||
|
|
||
|
PyObject* PyFunction_GetClosure(object op) except? NULL
|
||
|
# Return value: Borrowed reference.
|
||
|
# Return the closure associated with the function object op. This
|
||
|
# can be NULL or a tuple of cell objects.
|
||
|
|
||
|
int PyFunction_SetClosure(object op, object closure) except -1
|
||
|
# Set the closure associated with the function object op. closure
|
||
|
# must be Py_None or a tuple of cell objects.
|
||
|
# Raises SystemError and returns -1 on failure.
|