aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/tools/cython/Cython/Includes/cpython/function.pxd
blob: 066fd2683ad6907370500e43399a470a9021031c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
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.