Skip to content

Commit 5643e40

Browse files
committed
Update Python inlined files: Update to PyPy-3.5 6.0.0
1 parent d578956 commit 5643e40

File tree

975 files changed

+101500
-29668
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

975 files changed

+101500
-29668
lines changed
Lines changed: 103 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,103 @@
1+
2+
/* Function object interface */
3+
#ifndef Py_LIMITED_API
4+
#ifndef Py_FUNCOBJECT_H
5+
#define Py_FUNCOBJECT_H
6+
#ifdef __cplusplus
7+
extern "C" {
8+
#endif
9+
10+
/* Function objects and code objects should not be confused with each other:
11+
*
12+
* Function objects are created by the execution of the 'def' statement.
13+
* They reference a code object in their __code__ attribute, which is a
14+
* purely syntactic object, i.e. nothing more than a compiled version of some
15+
* source code lines. There is one code object per source code "fragment",
16+
* but each code object can be referenced by zero or many function objects
17+
* depending only on how many times the 'def' statement in the source was
18+
* executed so far.
19+
*/
20+
21+
typedef struct {
22+
PyObject_HEAD
23+
PyObject *func_code; /* A code object, the __code__ attribute */
24+
PyObject *func_globals; /* A dictionary (other mappings won't do) */
25+
PyObject *func_defaults; /* NULL or a tuple */
26+
PyObject *func_kwdefaults; /* NULL or a dict */
27+
PyObject *func_closure; /* NULL or a tuple of cell objects */
28+
PyObject *func_doc; /* The __doc__ attribute, can be anything */
29+
PyObject *func_name; /* The __name__ attribute, a string object */
30+
PyObject *func_dict; /* The __dict__ attribute, a dict or NULL */
31+
PyObject *func_weakreflist; /* List of weak references */
32+
PyObject *func_module; /* The __module__ attribute, can be anything */
33+
PyObject *func_annotations; /* Annotations, a dict or NULL */
34+
PyObject *func_qualname; /* The qualified name */
35+
36+
/* Invariant:
37+
* func_closure contains the bindings for func_code->co_freevars, so
38+
* PyTuple_Size(func_closure) == PyCode_GetNumFree(func_code)
39+
* (func_closure may be NULL if PyCode_GetNumFree(func_code) == 0).
40+
*/
41+
} PyFunctionObject;
42+
43+
PyAPI_DATA(PyTypeObject) PyFunction_Type;
44+
45+
#define PyFunction_Check(op) (Py_TYPE(op) == &PyFunction_Type)
46+
47+
PyAPI_FUNC(PyObject *) PyFunction_New(PyObject *, PyObject *);
48+
PyAPI_FUNC(PyObject *) PyFunction_NewWithQualName(PyObject *, PyObject *, PyObject *);
49+
PyAPI_FUNC(PyObject *) PyFunction_GetCode(PyObject *);
50+
PyAPI_FUNC(PyObject *) PyFunction_GetGlobals(PyObject *);
51+
PyAPI_FUNC(PyObject *) PyFunction_GetModule(PyObject *);
52+
PyAPI_FUNC(PyObject *) PyFunction_GetDefaults(PyObject *);
53+
PyAPI_FUNC(int) PyFunction_SetDefaults(PyObject *, PyObject *);
54+
PyAPI_FUNC(PyObject *) PyFunction_GetKwDefaults(PyObject *);
55+
PyAPI_FUNC(int) PyFunction_SetKwDefaults(PyObject *, PyObject *);
56+
PyAPI_FUNC(PyObject *) PyFunction_GetClosure(PyObject *);
57+
PyAPI_FUNC(int) PyFunction_SetClosure(PyObject *, PyObject *);
58+
PyAPI_FUNC(PyObject *) PyFunction_GetAnnotations(PyObject *);
59+
PyAPI_FUNC(int) PyFunction_SetAnnotations(PyObject *, PyObject *);
60+
61+
#ifndef Py_LIMITED_API
62+
PyAPI_FUNC(PyObject *) _PyFunction_FastCallDict(
63+
PyObject *func,
64+
PyObject **args,
65+
Py_ssize_t nargs,
66+
PyObject *kwargs);
67+
68+
PyAPI_FUNC(PyObject *) _PyFunction_FastCallKeywords(
69+
PyObject *func,
70+
PyObject **stack,
71+
Py_ssize_t nargs,
72+
PyObject *kwnames);
73+
#endif
74+
75+
/* Macros for direct access to these values. Type checks are *not*
76+
done, so use with care. */
77+
#define PyFunction_GET_CODE(func) \
78+
(((PyFunctionObject *)func) -> func_code)
79+
#define PyFunction_GET_GLOBALS(func) \
80+
(((PyFunctionObject *)func) -> func_globals)
81+
#define PyFunction_GET_MODULE(func) \
82+
(((PyFunctionObject *)func) -> func_module)
83+
#define PyFunction_GET_DEFAULTS(func) \
84+
(((PyFunctionObject *)func) -> func_defaults)
85+
#define PyFunction_GET_KW_DEFAULTS(func) \
86+
(((PyFunctionObject *)func) -> func_kwdefaults)
87+
#define PyFunction_GET_CLOSURE(func) \
88+
(((PyFunctionObject *)func) -> func_closure)
89+
#define PyFunction_GET_ANNOTATIONS(func) \
90+
(((PyFunctionObject *)func) -> func_annotations)
91+
92+
/* The classmethod and staticmethod types lives here, too */
93+
PyAPI_DATA(PyTypeObject) PyClassMethod_Type;
94+
PyAPI_DATA(PyTypeObject) PyStaticMethod_Type;
95+
96+
PyAPI_FUNC(PyObject *) PyClassMethod_New(PyObject *);
97+
PyAPI_FUNC(PyObject *) PyStaticMethod_New(PyObject *);
98+
99+
#ifdef __cplusplus
100+
}
101+
#endif
102+
#endif /* !Py_FUNCOBJECT_H */
103+
#endif /* Py_LIMITED_API */
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
/* Unicode name database interface */
2+
#ifndef Py_LIMITED_API
3+
#ifndef Py_UCNHASH_H
4+
#define Py_UCNHASH_H
5+
#ifdef __cplusplus
6+
extern "C" {
7+
#endif
8+
9+
/* revised ucnhash CAPI interface (exported through a "wrapper") */
10+
11+
#define PyUnicodeData_CAPSULE_NAME "unicodedata.ucnhash_CAPI"
12+
13+
typedef struct {
14+
15+
/* Size of this struct */
16+
int size;
17+
18+
/* Get name for a given character code. Returns non-zero if
19+
success, zero if not. Does not set Python exceptions.
20+
If self is NULL, data come from the default version of the database.
21+
If it is not NULL, it should be a unicodedata.ucd_X_Y_Z object */
22+
int (*getname)(PyObject *self, Py_UCS4 code, char* buffer, int buflen,
23+
int with_alias_and_seq);
24+
25+
/* Get character code for a given name. Same error handling
26+
as for getname. */
27+
int (*getcode)(PyObject *self, const char* name, int namelen, Py_UCS4* code,
28+
int with_named_seq);
29+
30+
} _PyUnicode_Name_CAPI;
31+
32+
#ifdef __cplusplus
33+
}
34+
#endif
35+
#endif /* !Py_UCNHASH_H */
36+
#endif /* !Py_LIMITED_API */

0 commit comments

Comments
 (0)