this repo has no description
at trunk 1888 lines 115 kB view raw
1/* Copyright (c) Facebook, Inc. and its affiliates. (http://www.facebook.com) */ 2#ifndef CPYTHON_FUNC_H 3#define CPYTHON_FUNC_H 4 5#include <math.h> 6 7#include "cpython-types.h" 8 9#include "pyconfig.h" 10 11#ifdef __cplusplus 12extern "C" { 13#endif 14 15#ifndef PyAPI_FUNC_DECL 16#define PyAPI_FUNC_DECL(DECL) __attribute__((visibility("default"))) DECL 17#endif 18#define PyAPI_FUNC(RTYPE) __attribute__((visibility("default"))) RTYPE 19 20#ifdef __cplusplus 21#define PyMODINIT_FUNC extern "C" PyObject* 22#else 23#define PyMODINIT_FUNC PyObject* 24#endif 25#define Py_LOCAL(type) static type 26#define Py_LOCAL_INLINE(type) static inline type 27 28#define Py_GCC_ATTRIBUTE(x) __attribute__(x) 29#define Py_ALIGNED(x) __attribute__((aligned(x))) 30#define Py_DEPRECATED(VERSION_UNUSED) __attribute__((__deprecated__)) 31#define Py_UNUSED(name) _unused_##name __attribute__((unused)) 32#ifndef _Py_NO_RETURN 33#define _Py_NO_RETURN __attribute__((__noreturn__)) 34#endif 35 36#define Py_UNREACHABLE() abort() 37 38/* Singletons */ 39PyAPI_FUNC_DECL(PyTypeObject* PyAsyncGen_Type_Ptr(void)); 40PyAPI_FUNC_DECL(PyTypeObject* PyBaseObject_Type_Ptr(void)); 41PyAPI_FUNC_DECL(PyTypeObject* PyBool_Type_Ptr(void)); 42PyAPI_FUNC_DECL(PyTypeObject* PyByteArrayIter_Type_Ptr(void)); 43PyAPI_FUNC_DECL(PyTypeObject* PyByteArray_Type_Ptr(void)); 44PyAPI_FUNC_DECL(PyTypeObject* PyBytesIter_Type_Ptr(void)); 45PyAPI_FUNC_DECL(PyTypeObject* PyBytes_Type_Ptr(void)); 46PyAPI_FUNC_DECL(PyTypeObject* PyClassMethod_Type_Ptr(void)); 47PyAPI_FUNC_DECL(PyTypeObject* PyCode_Type_Ptr(void)); 48PyAPI_FUNC_DECL(PyTypeObject* PyComplex_Type_Ptr(void)); 49PyAPI_FUNC_DECL(PyTypeObject* PyCoro_Type_Ptr(void)); 50PyAPI_FUNC_DECL(PyTypeObject* PyDictItems_Type_Ptr(void)); 51PyAPI_FUNC_DECL(PyTypeObject* PyDictIterItem_Type_Ptr(void)); 52PyAPI_FUNC_DECL(PyTypeObject* PyDictIterKey_Type_Ptr(void)); 53PyAPI_FUNC_DECL(PyTypeObject* PyDictIterValue_Type_Ptr(void)); 54PyAPI_FUNC_DECL(PyTypeObject* PyDictKeys_Type_Ptr(void)); 55PyAPI_FUNC_DECL(PyTypeObject* PyDictProxy_Type_Ptr(void)); 56PyAPI_FUNC_DECL(PyTypeObject* PyDictValues_Type_Ptr(void)); 57PyAPI_FUNC_DECL(PyTypeObject* PyDict_Type_Ptr(void)); 58PyAPI_FUNC_DECL(PyObject* PyEllipsis_Ptr(void)); 59PyAPI_FUNC_DECL(PyTypeObject* PyEllipsis_Type_Ptr(void)); 60PyAPI_FUNC_DECL(PyTypeObject* PyEnum_Type_Ptr(void)); 61PyAPI_FUNC_DECL(PyObject* PyExc_ArithmeticError_Ptr(void)); 62PyAPI_FUNC_DECL(PyObject* PyExc_AssertionError_Ptr(void)); 63PyAPI_FUNC_DECL(PyObject* PyExc_AttributeError_Ptr(void)); 64PyAPI_FUNC_DECL(PyObject* PyExc_BaseException_Ptr(void)); 65PyAPI_FUNC_DECL(PyObject* PyExc_BlockingIOError_Ptr(void)); 66PyAPI_FUNC_DECL(PyObject* PyExc_BrokenPipeError_Ptr(void)); 67PyAPI_FUNC_DECL(PyObject* PyExc_BufferError_Ptr(void)); 68PyAPI_FUNC_DECL(PyObject* PyExc_BytesWarning_Ptr(void)); 69PyAPI_FUNC_DECL(PyObject* PyExc_ChildProcessError_Ptr(void)); 70PyAPI_FUNC_DECL(PyObject* PyExc_ConnectionAbortedError_Ptr(void)); 71PyAPI_FUNC_DECL(PyObject* PyExc_ConnectionError_Ptr(void)); 72PyAPI_FUNC_DECL(PyObject* PyExc_ConnectionRefusedError_Ptr(void)); 73PyAPI_FUNC_DECL(PyObject* PyExc_ConnectionResetError_Ptr(void)); 74PyAPI_FUNC_DECL(PyObject* PyExc_DeprecationWarning_Ptr(void)); 75PyAPI_FUNC_DECL(PyObject* PyExc_EOFError_Ptr(void)); 76PyAPI_FUNC_DECL(PyObject* PyExc_Exception_Ptr(void)); 77PyAPI_FUNC_DECL(PyObject* PyExc_FileExistsError_Ptr(void)); 78PyAPI_FUNC_DECL(PyObject* PyExc_FileNotFoundError_Ptr(void)); 79PyAPI_FUNC_DECL(PyObject* PyExc_FloatingPointError_Ptr(void)); 80PyAPI_FUNC_DECL(PyObject* PyExc_FutureWarning_Ptr(void)); 81PyAPI_FUNC_DECL(PyObject* PyExc_GeneratorExit_Ptr(void)); 82PyAPI_FUNC_DECL(PyObject* PyExc_ImportError_Ptr(void)); 83PyAPI_FUNC_DECL(PyObject* PyExc_ImportWarning_Ptr(void)); 84PyAPI_FUNC_DECL(PyObject* PyExc_IndentationError_Ptr(void)); 85PyAPI_FUNC_DECL(PyObject* PyExc_IndexError_Ptr(void)); 86PyAPI_FUNC_DECL(PyObject* PyExc_InterruptedError_Ptr(void)); 87PyAPI_FUNC_DECL(PyObject* PyExc_IsADirectoryError_Ptr(void)); 88PyAPI_FUNC_DECL(PyObject* PyExc_KeyError_Ptr(void)); 89PyAPI_FUNC_DECL(PyObject* PyExc_KeyboardInterrupt_Ptr(void)); 90PyAPI_FUNC_DECL(PyObject* PyExc_LookupError_Ptr(void)); 91PyAPI_FUNC_DECL(PyObject* PyExc_MemoryError_Ptr(void)); 92PyAPI_FUNC_DECL(PyObject* PyExc_ModuleNotFoundError_Ptr(void)); 93PyAPI_FUNC_DECL(PyObject* PyExc_NameError_Ptr(void)); 94PyAPI_FUNC_DECL(PyObject* PyExc_NotADirectoryError_Ptr(void)); 95PyAPI_FUNC_DECL(PyObject* PyExc_NotImplementedError_Ptr(void)); 96PyAPI_FUNC_DECL(PyObject* PyExc_OSError_Ptr(void)); 97PyAPI_FUNC_DECL(PyObject* PyExc_OverflowError_Ptr(void)); 98PyAPI_FUNC_DECL(PyObject* PyExc_PendingDeprecationWarning_Ptr(void)); 99PyAPI_FUNC_DECL(PyObject* PyExc_PermissionError_Ptr(void)); 100PyAPI_FUNC_DECL(PyObject* PyExc_ProcessLookupError_Ptr(void)); 101PyAPI_FUNC_DECL(PyObject* PyExc_RecursionError_Ptr(void)); 102PyAPI_FUNC_DECL(PyObject* PyExc_ReferenceError_Ptr(void)); 103PyAPI_FUNC_DECL(PyObject* PyExc_ResourceWarning_Ptr(void)); 104PyAPI_FUNC_DECL(PyObject* PyExc_RuntimeError_Ptr(void)); 105PyAPI_FUNC_DECL(PyObject* PyExc_RuntimeWarning_Ptr(void)); 106PyAPI_FUNC_DECL(PyObject* PyExc_StopAsyncIteration_Ptr(void)); 107PyAPI_FUNC_DECL(PyObject* PyExc_StopIteration_Ptr(void)); 108PyAPI_FUNC_DECL(PyObject* PyExc_SyntaxError_Ptr(void)); 109PyAPI_FUNC_DECL(PyObject* PyExc_SyntaxWarning_Ptr(void)); 110PyAPI_FUNC_DECL(PyObject* PyExc_SystemError_Ptr(void)); 111PyAPI_FUNC_DECL(PyObject* PyExc_SystemExit_Ptr(void)); 112PyAPI_FUNC_DECL(PyObject* PyExc_TabError_Ptr(void)); 113PyAPI_FUNC_DECL(PyObject* PyExc_TimeoutError_Ptr(void)); 114PyAPI_FUNC_DECL(PyObject* PyExc_TypeError_Ptr(void)); 115PyAPI_FUNC_DECL(PyObject* PyExc_UnboundLocalError_Ptr(void)); 116PyAPI_FUNC_DECL(PyObject* PyExc_UnicodeDecodeError_Ptr(void)); 117PyAPI_FUNC_DECL(PyObject* PyExc_UnicodeEncodeError_Ptr(void)); 118PyAPI_FUNC_DECL(PyObject* PyExc_UnicodeError_Ptr(void)); 119PyAPI_FUNC_DECL(PyObject* PyExc_UnicodeTranslateError_Ptr(void)); 120PyAPI_FUNC_DECL(PyObject* PyExc_UnicodeWarning_Ptr(void)); 121PyAPI_FUNC_DECL(PyObject* PyExc_UserWarning_Ptr(void)); 122PyAPI_FUNC_DECL(PyObject* PyExc_ValueError_Ptr(void)); 123PyAPI_FUNC_DECL(PyObject* PyExc_Warning_Ptr(void)); 124PyAPI_FUNC_DECL(PyObject* PyExc_ZeroDivisionError_Ptr(void)); 125PyAPI_FUNC_DECL(PyObject* PyFalse_Ptr(void)); 126PyAPI_FUNC_DECL(PyTypeObject* PyFloat_Type_Ptr(void)); 127PyAPI_FUNC_DECL(PyTypeObject* PyFrozenSet_Type_Ptr(void)); 128PyAPI_FUNC_DECL(PyTypeObject* PyFunction_Type_Ptr(void)); 129PyAPI_FUNC_DECL(PyTypeObject* PyGen_Type_Ptr(void)); 130PyAPI_FUNC_DECL(PyTypeObject* PyListIter_Type_Ptr(void)); 131PyAPI_FUNC_DECL(PyTypeObject* PyList_Type_Ptr(void)); 132PyAPI_FUNC_DECL(PyTypeObject* PyLongRangeIter_Type_Ptr(void)); 133PyAPI_FUNC_DECL(PyTypeObject* PyLong_Type_Ptr(void)); 134PyAPI_FUNC_DECL(PyTypeObject* PyMemoryView_Type_Ptr(void)); 135PyAPI_FUNC_DECL(PyTypeObject* PyMethod_Type_Ptr(void)); 136PyAPI_FUNC_DECL(PyTypeObject* PyModule_Type_Ptr(void)); 137PyAPI_FUNC_DECL(PyObject* PyNone_Ptr(void)); 138PyAPI_FUNC_DECL(PyObject* PyNotImplemented_Ptr(void)); 139PyAPI_FUNC_DECL(PyTypeObject* PyProperty_Type_Ptr(void)); 140PyAPI_FUNC_DECL(PyTypeObject* PyRangeIter_Type_Ptr(void)); 141PyAPI_FUNC_DECL(PyTypeObject* PyRange_Type_Ptr(void)); 142PyAPI_FUNC_DECL(PyTypeObject* PySeqIter_Type_Ptr(void)); 143PyAPI_FUNC_DECL(PyTypeObject* PySetIter_Type_Ptr(void)); 144PyAPI_FUNC_DECL(PyTypeObject* PySet_Type_Ptr(void)); 145PyAPI_FUNC_DECL(PyTypeObject* PySlice_Type_Ptr(void)); 146PyAPI_FUNC_DECL(PyTypeObject* PyStaticMethod_Type_Ptr(void)); 147PyAPI_FUNC_DECL(PyTypeObject* PySuper_Type_Ptr(void)); 148PyAPI_FUNC_DECL(PyObject* PyTrue_Ptr(void)); 149PyAPI_FUNC_DECL(PyTypeObject* PyTupleIter_Type_Ptr(void)); 150PyAPI_FUNC_DECL(PyTypeObject* PyTuple_Type_Ptr(void)); 151PyAPI_FUNC_DECL(PyTypeObject* PyType_Type_Ptr(void)); 152PyAPI_FUNC_DECL(PyTypeObject* PyUnicodeIter_Type_Ptr(void)); 153PyAPI_FUNC_DECL(PyTypeObject* PyUnicode_Type_Ptr(void)); 154PyAPI_FUNC_DECL(const _Py_HashSecret_t* _Py_HashSecret_Ptr(void)); 155PyAPI_FUNC_DECL(PyObject* _PyLong_One_Ptr(void)); 156PyAPI_FUNC_DECL(PyObject* _PyLong_Zero_Ptr(void)); 157PyAPI_FUNC_DECL(PyTypeObject* _PyNone_Type_Ptr(void)); 158PyAPI_FUNC_DECL(PyTypeObject* _PyNotImplemented_Type_Ptr(void)); 159PyAPI_FUNC_DECL(_PyRuntimeState* _PyRuntime_Ptr(void)); 160 161/* Macro helpers */ 162PyAPI_FUNC_DECL(int PyAnySet_CheckExact_Func(PyObject*)); 163PyAPI_FUNC_DECL(int PyAnySet_Check_Func(PyObject*)); 164PyAPI_FUNC_DECL(int PyBool_Check_Func(PyObject*)); 165PyAPI_FUNC_DECL(int PyByteArray_CheckExact_Func(PyObject*)); 166PyAPI_FUNC_DECL(int PyByteArray_Check_Func(PyObject*)); 167PyAPI_FUNC_DECL(int PyBytes_CheckExact_Func(PyObject*)); 168PyAPI_FUNC_DECL(int PyBytes_Check_Func(PyObject*)); 169PyAPI_FUNC_DECL(int PyCFunction_Check_Func(PyObject*)); 170PyAPI_FUNC_DECL(int PyCapsule_CheckExact_Func(PyObject*)); 171PyAPI_FUNC_DECL(int PyCode_Check_Func(PyObject*)); 172PyAPI_FUNC_DECL(Py_ssize_t PyCode_GetNumFree_Func(PyObject*)); 173PyAPI_FUNC_DECL(int PyComplex_CheckExact_Func(PyObject*)); 174PyAPI_FUNC_DECL(int PyComplex_Check_Func(PyObject*)); 175PyAPI_FUNC_DECL(int PyDict_CheckExact_Func(PyObject*)); 176PyAPI_FUNC_DECL(int PyDict_Check_Func(PyObject*)); 177PyAPI_FUNC_DECL(Py_ssize_t PyDict_GET_SIZE_Func(PyObject*)); 178PyAPI_FUNC_DECL(int PyExceptionClass_Check_Func(PyObject*)); 179PyAPI_FUNC_DECL(int PyExceptionInstance_Check_Func(PyObject*)); 180PyAPI_FUNC_DECL(int PyFloat_CheckExact_Func(PyObject*)); 181PyAPI_FUNC_DECL(int PyFloat_Check_Func(PyObject*)); 182PyAPI_FUNC_DECL(int PyFrozenSet_CheckExact_Func(PyObject*)); 183PyAPI_FUNC_DECL(int PyFrozenSet_Check_Func(PyObject*)); 184PyAPI_FUNC_DECL(int PyIndex_Check_Func(PyObject*)); 185PyAPI_FUNC_DECL(int PyIter_Check_Func(PyObject*)); 186PyAPI_FUNC_DECL(int PyList_CheckExact_Func(PyObject*)); 187PyAPI_FUNC_DECL(int PyList_Check_Func(PyObject*)); 188PyAPI_FUNC_DECL(int PyList_SET_ITEM_Func(PyObject*, Py_ssize_t, PyObject*)); 189PyAPI_FUNC_DECL(int PyLong_CheckExact_Func(PyObject*)); 190PyAPI_FUNC_DECL(int PyLong_Check_Func(PyObject*)); 191PyAPI_FUNC_DECL(void* PyMem_New_Func(size_t size, size_t n)); 192PyAPI_FUNC_DECL(int PyMemoryView_Check_Func(PyObject*)); 193PyAPI_FUNC_DECL(int PyMethod_Check_Func(PyObject*)); 194PyAPI_FUNC_DECL(int PyModule_CheckExact_Func(PyObject*)); 195PyAPI_FUNC_DECL(int PyModule_Check_Func(PyObject*)); 196PyAPI_FUNC_DECL(int PyObject_CheckBuffer_Func(PyObject*)); 197PyAPI_FUNC_DECL(int PyObject_TypeCheck_Func(PyObject*, PyTypeObject*)); 198PyAPI_FUNC_DECL(int PySet_Check_Func(PyObject*)); 199PyAPI_FUNC_DECL(PyObject* PySequence_Fast_GET_ITEM_Func(PyObject*, Py_ssize_t)); 200PyAPI_FUNC_DECL(Py_ssize_t PySequence_Fast_GET_SIZE_Func(PyObject*)); 201PyAPI_FUNC_DECL(PyObject* PySequence_ITEM_Func(PyObject*, Py_ssize_t)); 202PyAPI_FUNC_DECL(int PySlice_Check_Func(PyObject*)); 203PyAPI_FUNC_DECL(PyObject* PyStructSequence_SET_ITEM_Func(PyObject*, Py_ssize_t, 204 PyObject*)); 205PyAPI_FUNC_DECL(int PyTraceBack_Check_Func(PyObject*)); 206PyAPI_FUNC_DECL(int PyTuple_CheckExact_Func(PyObject*)); 207PyAPI_FUNC_DECL(int PyTuple_Check_Func(PyObject*)); 208PyAPI_FUNC_DECL(PyObject* PyTuple_GET_ITEM_Func(PyObject*, Py_ssize_t)); 209PyAPI_FUNC_DECL(Py_ssize_t PyTuple_GET_SIZE_Func(PyObject*)); 210PyAPI_FUNC_DECL(PyObject* PyTuple_SET_ITEM_Func(PyObject*, Py_ssize_t, 211 PyObject*)); 212PyAPI_FUNC_DECL(int PyType_CheckExact_Func(PyObject*)); 213PyAPI_FUNC_DECL(int PyType_Check_Func(PyObject*)); 214PyAPI_FUNC_DECL(int PyUnicode_CheckExact_Func(PyObject*)); 215PyAPI_FUNC_DECL(int PyUnicode_Check_Func(PyObject*)); 216PyAPI_FUNC_DECL(void* PyUnicode_DATA_Func(PyObject*)); 217PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_GET_LENGTH_Func(PyObject*)); 218PyAPI_FUNC_DECL(int PyUnicode_IS_ASCII_Func(PyObject*)); 219PyAPI_FUNC_DECL(int PyUnicode_KIND_Func(PyObject*)); 220PyAPI_FUNC_DECL(Py_UCS4 PyUnicode_READ_CHAR_Func(PyObject*, Py_ssize_t)); 221PyAPI_FUNC_DECL(Py_UCS4 PyUnicode_READ_Func(int, void*, Py_ssize_t)); 222PyAPI_FUNC_DECL(void PyUnicode_WRITE_Func(enum PyUnicode_Kind, void*, 223 Py_ssize_t, Py_UCS4)); 224PyAPI_FUNC_DECL(int PyWeakref_Check_Func(PyObject*)); 225PyAPI_FUNC_DECL(PyObject* PyWeakref_GET_OBJECT_Func(PyObject*)); 226PyAPI_FUNC_DECL(void Py_DECREF_Func(PyObject*)); 227PyAPI_FUNC_DECL(int Py_EnterRecursiveCall_Func(const char*)); 228PyAPI_FUNC_DECL(void Py_INCREF_Func(PyObject*)); 229PyAPI_FUNC_DECL(void Py_LeaveRecursiveCall_Func(void)); 230PyAPI_FUNC_DECL(Py_ssize_t Py_REFCNT_Func(PyObject*)); 231PyAPI_FUNC_DECL(Py_ssize_t* Py_SIZE_Func(PyVarObject*)); 232PyAPI_FUNC_DECL(PyTypeObject* Py_TYPE_Func(PyObject* obj)); 233PyAPI_FUNC_DECL(void Py_SET_TYPE_Func(PyObject* obj, PyTypeObject* type)); 234PyAPI_FUNC_DECL(void Py_SET_REFCNT_Func(PyObject* obj, Py_ssize_t refcnt)); 235PyAPI_FUNC_DECL(int Py_UNICODE_ISALPHA_Func(Py_UCS4)); 236PyAPI_FUNC_DECL(int Py_UNICODE_ISDECIMAL_Func(Py_UCS4)); 237PyAPI_FUNC_DECL(int Py_UNICODE_ISDIGIT_Func(Py_UCS4)); 238PyAPI_FUNC_DECL(int Py_UNICODE_ISLINEBREAK_Func(Py_UCS4)); 239PyAPI_FUNC_DECL(int Py_UNICODE_ISLOWER_Func(Py_UCS4)); 240PyAPI_FUNC_DECL(int Py_UNICODE_ISNUMERIC_Func(Py_UCS4)); 241PyAPI_FUNC_DECL(int Py_UNICODE_ISPRINTABLE_Func(Py_UCS4)); 242PyAPI_FUNC_DECL(int Py_UNICODE_ISSPACE_Func(Py_UCS4)); 243PyAPI_FUNC_DECL(int Py_UNICODE_ISTITLE_Func(Py_UCS4)); 244PyAPI_FUNC_DECL(int Py_UNICODE_ISUPPER_Func(Py_UCS4)); 245PyAPI_FUNC_DECL(int Py_UNICODE_TODECIMAL_Func(Py_UCS4)); 246PyAPI_FUNC_DECL(int Py_UNICODE_TODIGIT_Func(Py_UCS4)); 247PyAPI_FUNC_DECL(Py_UCS4 Py_UNICODE_TOLOWER_Func(Py_UCS4)); 248PyAPI_FUNC_DECL(double Py_UNICODE_TONUMERIC_Func(Py_UCS4)); 249PyAPI_FUNC_DECL(Py_UCS4 Py_UNICODE_TOTITLE_Func(Py_UCS4)); 250PyAPI_FUNC_DECL(Py_UCS4 Py_UNICODE_TOUPPER_Func(Py_UCS4)); 251PyAPI_FUNC_DECL(void Py_XDECREF_Func(PyObject*)); 252PyAPI_FUNC_DECL(void Py_XINCREF_Func(PyObject*)); 253PyAPI_FUNC_DECL(PyObject* _PyCode_ConstantKey(PyObject*)); 254PyAPI_FUNC_DECL(int _PyObject_DebugMallocStats(FILE*)); 255PyAPI_FUNC_DECL(Py_ssize_t _PyObject_SIZE_Func(PyObject*)); 256PyAPI_FUNC_DECL(Py_ssize_t _PyObject_VAR_SIZE_Func(PyObject*, Py_ssize_t)); 257 258/* C-API functions */ 259PyAPI_FUNC_DECL(int _PyAST_Optimize(struct _mod*, PyArena* arena, 260 int optimize)); 261PyAPI_FUNC_DECL(PyCodeObject* PyAST_Compile(struct _mod*, const char*, 262 PyCompilerFlags*, PyArena*)); 263PyAPI_FUNC_DECL(PyCodeObject* PyAST_CompileEx(struct _mod*, const char*, 264 PyCompilerFlags*, int, PyArena*)); 265PyAPI_FUNC_DECL(PyCodeObject* PyAST_CompileObject(struct _mod*, PyObject*, 266 PyCompilerFlags*, int, 267 PyArena*)); 268PyAPI_FUNC_DECL(int PyArena_AddPyObject(PyArena*, PyObject*)); 269PyAPI_FUNC_DECL(void PyArena_Free(PyArena*)); 270PyAPI_FUNC_DECL(void* PyArena_Malloc(PyArena*, size_t)); 271PyAPI_FUNC_DECL(PyArena* PyArena_New(void)); 272PyAPI_FUNC_DECL(int PyArg_Parse(PyObject*, const char*, ...)); 273PyAPI_FUNC_DECL(int PyArg_ParseTuple(PyObject* args, const char* format, ...)); 274PyAPI_FUNC_DECL(int PyArg_ParseTupleAndKeywords(PyObject*, PyObject*, 275 const char*, char**, ...)); 276PyAPI_FUNC_DECL(int PyArg_UnpackTuple(PyObject*, const char*, Py_ssize_t, 277 Py_ssize_t, ...)); 278PyAPI_FUNC_DECL(int PyArg_VaParse(PyObject*, const char*, va_list)); 279PyAPI_FUNC_DECL(int PyArg_VaParseTupleAndKeywords(PyObject*, PyObject*, 280 const char*, char**, 281 va_list)); 282PyAPI_FUNC_DECL(int PyArg_ValidateKeywordArguments(PyObject*)); 283PyAPI_FUNC_DECL(PyObject* PyBool_FromLong(long)); 284PyAPI_FUNC_DECL(int PyBuffer_FillInfo(Py_buffer*, PyObject*, void*, Py_ssize_t, 285 int, int)); 286PyAPI_FUNC_DECL(int PyBuffer_IsContiguous(const Py_buffer*, char)); 287PyAPI_FUNC_DECL(void PyBuffer_Release(Py_buffer*)); 288PyAPI_FUNC_DECL(char* PyByteArray_AsString(PyObject*)); 289PyAPI_FUNC_DECL(PyObject* PyByteArray_Concat(PyObject*, PyObject*)); 290PyAPI_FUNC_DECL(PyObject* PyByteArray_FromObject(PyObject*)); 291PyAPI_FUNC_DECL(PyObject* PyByteArray_FromStringAndSize(const char*, 292 Py_ssize_t)); 293PyAPI_FUNC_DECL(int PyByteArray_Resize(PyObject*, Py_ssize_t)); 294PyAPI_FUNC_DECL(Py_ssize_t PyByteArray_Size(PyObject*)); 295PyAPI_FUNC_DECL(char* PyBytes_AsString(PyObject*)); 296PyAPI_FUNC_DECL(int PyBytes_AsStringAndSize(PyObject*, char**, Py_ssize_t*)); 297PyAPI_FUNC_DECL(void PyBytes_Concat(PyObject**, PyObject*)); 298PyAPI_FUNC_DECL(void PyBytes_ConcatAndDel(PyObject**, PyObject*)); 299PyAPI_FUNC_DECL(PyObject* PyBytes_DecodeEscape(const char*, Py_ssize_t, 300 const char*, Py_ssize_t, 301 const char*)); 302PyAPI_FUNC_DECL(PyObject* PyBytes_FromFormat(const char*, ...)); 303PyAPI_FUNC_DECL(PyObject* PyBytes_FromFormatV(const char*, va_list)); 304PyAPI_FUNC_DECL(PyObject* PyBytes_FromObject(PyObject*)); 305PyAPI_FUNC_DECL(PyObject* PyBytes_FromString(const char*)); 306PyAPI_FUNC_DECL(PyObject* PyBytes_FromStringAndSize(const char*, Py_ssize_t)); 307PyAPI_FUNC_DECL(PyObject* PyBytes_Repr(PyObject*, int)); 308PyAPI_FUNC_DECL(Py_ssize_t PyBytes_Size(PyObject*)); 309PyAPI_FUNC_DECL(PyObject* PyCFunction_Call(PyObject*, PyObject*, PyObject*)); 310PyAPI_FUNC_DECL(int PyCFunction_GetFlags(PyObject*)); 311PyAPI_FUNC_DECL(PyCFunction PyCFunction_GetFunction(PyObject*)); 312PyAPI_FUNC_DECL(PyObject* PyCFunction_GetSelf(PyObject*)); 313PyAPI_FUNC_DECL(PyObject* PyCFunction_GET_SELF_Func(PyObject*)); 314PyAPI_FUNC_DECL(PyObject* PyCFunction_New(PyMethodDef*, PyObject*)); 315PyAPI_FUNC_DECL(PyObject* PyCFunction_NewEx(PyMethodDef*, PyObject*, 316 PyObject*)); 317PyAPI_FUNC_DECL(PyObject* PyCallIter_New(PyObject*, PyObject*)); 318PyAPI_FUNC_DECL(int PyCallable_Check(PyObject*)); 319PyAPI_FUNC_DECL(void* PyCapsule_GetContext(PyObject*)); 320PyAPI_FUNC_DECL(PyCapsule_Destructor PyCapsule_GetDestructor(PyObject*)); 321PyAPI_FUNC_DECL(const char* PyCapsule_GetName(PyObject*)); 322PyAPI_FUNC_DECL(void* PyCapsule_GetPointer(PyObject*, const char*)); 323PyAPI_FUNC_DECL(void* PyCapsule_Import(const char*, int)); 324PyAPI_FUNC_DECL(int PyCapsule_IsValid(PyObject*, const char*)); 325PyAPI_FUNC_DECL(PyObject* PyCapsule_New(void*, const char*, 326 PyCapsule_Destructor)); 327PyAPI_FUNC_DECL(int PyCapsule_SetContext(PyObject*, void*)); 328PyAPI_FUNC_DECL(int PyCapsule_SetDestructor(PyObject*, PyCapsule_Destructor)); 329PyAPI_FUNC_DECL(int PyCapsule_SetName(PyObject*, const char*)); 330PyAPI_FUNC_DECL(int PyCapsule_SetPointer(PyObject*, void*)); 331PyAPI_FUNC_DECL(PyObject* PyClassMethod_New(PyObject*)); 332PyAPI_FUNC_DECL(PyCodeObject* PyCode_New(int, int, int, int, int, PyObject*, 333 PyObject*, PyObject*, PyObject*, 334 PyObject*, PyObject*, PyObject*, 335 PyObject*, int, PyObject*)); 336PyAPI_FUNC_DECL(PyCodeObject* PyCode_NewEmpty(const char*, const char*, int)); 337PyAPI_FUNC_DECL(PyCodeObject* PyCode_NewWithPosOnlyArgs( 338 int, int, int, int, int, int, PyObject*, PyObject*, PyObject*, PyObject*, 339 PyObject*, PyObject*, PyObject*, PyObject*, int, PyObject*)); 340PyAPI_FUNC_DECL(PyObject* PyCodec_BackslashReplaceErrors(PyObject*)); 341PyAPI_FUNC_DECL(PyObject* PyCodec_Decode(PyObject*, const char*, const char*)); 342PyAPI_FUNC_DECL(PyObject* PyCodec_Decoder(const char*)); 343PyAPI_FUNC_DECL(PyObject* PyCodec_Encode(PyObject*, const char*, const char*)); 344PyAPI_FUNC_DECL(PyObject* PyCodec_Encoder(const char*)); 345PyAPI_FUNC_DECL(PyObject* PyCodec_IgnoreErrors(PyObject*)); 346PyAPI_FUNC_DECL(PyObject* PyCodec_IncrementalDecoder(const char*, const char*)); 347PyAPI_FUNC_DECL(PyObject* PyCodec_IncrementalEncoder(const char*, const char*)); 348PyAPI_FUNC_DECL(int PyCodec_KnownEncoding(const char*)); 349PyAPI_FUNC_DECL(PyObject* PyCodec_LookupError(const char*)); 350PyAPI_FUNC_DECL(PyObject* PyCodec_NameReplaceErrors(PyObject*)); 351PyAPI_FUNC_DECL(int PyCodec_Register(PyObject*)); 352PyAPI_FUNC_DECL(int PyCodec_RegisterError(const char*, PyObject*)); 353PyAPI_FUNC_DECL(PyObject* PyCodec_ReplaceErrors(PyObject*)); 354PyAPI_FUNC_DECL(PyObject* PyCodec_StreamReader(const char*, PyObject*, 355 const char*)); 356PyAPI_FUNC_DECL(PyObject* PyCodec_StreamWriter(const char*, PyObject*, 357 const char*)); 358PyAPI_FUNC_DECL(PyObject* PyCodec_StrictErrors(PyObject*)); 359PyAPI_FUNC_DECL(PyObject* PyCodec_XMLCharRefReplaceErrors(PyObject*)); 360PyAPI_FUNC_DECL(int PyCompile_OpcodeStackEffect(int, int)); 361PyAPI_FUNC_DECL(Py_complex PyComplex_AsCComplex(PyObject*)); 362PyAPI_FUNC_DECL(PyObject* PyComplex_FromCComplex(Py_complex)); 363PyAPI_FUNC_DECL(PyObject* PyComplex_FromDoubles(double, double)); 364PyAPI_FUNC_DECL(double PyComplex_ImagAsDouble(PyObject*)); 365PyAPI_FUNC_DECL(double PyComplex_RealAsDouble(PyObject*)); 366PyAPI_FUNC_DECL(PyObject* PyDescr_NAME_Func(PyObject*)); 367PyAPI_FUNC_DECL(PyObject* PyDescr_NewClassMethod(PyTypeObject*, PyMethodDef*)); 368PyAPI_FUNC_DECL(PyObject* PyDescr_NewGetSet(PyTypeObject*, PyGetSetDef*)); 369PyAPI_FUNC_DECL(PyObject* PyDescr_NewMember(PyTypeObject*, 370 struct PyMemberDef*)); 371PyAPI_FUNC_DECL(PyObject* PyDescr_NewMethod(PyTypeObject*, PyMethodDef*)); 372PyAPI_FUNC_DECL(PyObject* PyDictProxy_New(PyObject*)); 373PyAPI_FUNC_DECL(void PyDict_Clear(PyObject*)); 374PyAPI_FUNC_DECL(int PyDict_Contains(PyObject*, PyObject*)); 375PyAPI_FUNC_DECL(PyObject* PyDict_Copy(PyObject*)); 376PyAPI_FUNC_DECL(int PyDict_DelItem(PyObject*, PyObject*)); 377PyAPI_FUNC_DECL(int PyDict_DelItemString(PyObject*, const char*)); 378PyAPI_FUNC_DECL(PyObject* PyDict_GetItem(PyObject*, PyObject*)); 379PyAPI_FUNC_DECL(PyObject* PyDict_GetItemString(PyObject*, const char*)); 380PyAPI_FUNC_DECL(PyObject* PyDict_GetItemWithError(PyObject*, PyObject*)); 381PyAPI_FUNC_DECL(PyObject* PyDict_Items(PyObject*)); 382PyAPI_FUNC_DECL(PyObject* PyDict_Keys(PyObject*)); 383PyAPI_FUNC_DECL(int PyDict_Merge(PyObject*, PyObject*, int)); 384PyAPI_FUNC_DECL(int PyDict_MergeFromSeq2(PyObject*, PyObject*, int)); 385PyAPI_FUNC_DECL(PyObject* PyDict_New(void)); 386PyAPI_FUNC_DECL(int PyDict_Next(PyObject*, Py_ssize_t*, PyObject**, 387 PyObject**)); 388PyAPI_FUNC_DECL(int PyDict_SetItem(PyObject*, PyObject*, PyObject*)); 389PyAPI_FUNC_DECL(int PyDict_SetItemString(PyObject*, const char*, PyObject*)); 390PyAPI_FUNC_DECL(Py_ssize_t PyDict_Size(PyObject*)); 391PyAPI_FUNC_DECL(int PyDict_Update(PyObject*, PyObject*)); 392PyAPI_FUNC_DECL(PyObject* PyDict_Values(PyObject*)); 393PyAPI_FUNC_DECL(int PyErr_BadArgument(void)); 394PyAPI_FUNC_DECL(void PyErr_BadInternalCall(void)); 395PyAPI_FUNC_DECL(int PyErr_CheckSignals(void)); 396PyAPI_FUNC_DECL(void PyErr_Clear(void)); 397PyAPI_FUNC_DECL(void PyErr_Display(PyObject*, PyObject*, PyObject*)); 398PyAPI_FUNC_DECL(int PyErr_ExceptionMatches(PyObject*)); 399PyAPI_FUNC_DECL(void PyErr_Fetch(PyObject**, PyObject**, PyObject**)); 400PyAPI_FUNC_DECL(PyObject* PyErr_Format(PyObject*, const char*, ...)); 401PyAPI_FUNC_DECL(PyObject* PyErr_FormatV(PyObject*, const char*, va_list)); 402PyAPI_FUNC_DECL(void PyErr_GetExcInfo(PyObject**, PyObject**, PyObject**)); 403PyAPI_FUNC_DECL(int PyErr_GivenExceptionMatches(PyObject*, PyObject*)); 404PyAPI_FUNC_DECL(PyObject* PyErr_NewException(const char*, PyObject*, 405 PyObject*)); 406PyAPI_FUNC_DECL(PyObject* PyErr_NewExceptionWithDoc(const char*, const char*, 407 PyObject*, PyObject*)); 408PyAPI_FUNC_DECL(PyObject* PyErr_NoMemory(void)); 409PyAPI_FUNC_DECL(void PyErr_NormalizeException(PyObject**, PyObject**, 410 PyObject**)); 411PyAPI_FUNC_DECL(PyObject* PyErr_Occurred(void)); 412PyAPI_FUNC_DECL(void PyErr_Print(void)); 413PyAPI_FUNC_DECL(void PyErr_PrintEx(int)); 414PyAPI_FUNC_DECL(PyObject* PyErr_ProgramText(const char*, int)); 415PyAPI_FUNC_DECL(PyObject* PyErr_ProgramTextObject(PyObject*, int)); 416PyAPI_FUNC_DECL(int PyErr_ResourceWarning(PyObject*, Py_ssize_t, const char*, 417 ...)); 418PyAPI_FUNC_DECL(void PyErr_Restore(PyObject*, PyObject*, PyObject*)); 419PyAPI_FUNC_DECL(PyObject* PyErr_SetExcFromWindowsErr(PyObject*, int)); 420PyAPI_FUNC_DECL(PyObject* PyErr_SetExcFromWindowsErrWithFilename(PyObject*, int, 421 const char*)); 422PyAPI_FUNC_DECL(PyObject* PyErr_SetExcFromWindowsErrWithFilenameObject( 423 PyObject*, int, PyObject*)); 424PyAPI_FUNC_DECL(PyObject* PyErr_SetExcFromWindowsErrWithFilenameObjects( 425 PyObject*, int, PyObject*, PyObject*)); 426PyAPI_FUNC_DECL(void PyErr_SetExcInfo(PyObject*, PyObject*, PyObject*)); 427PyAPI_FUNC_DECL(PyObject* PyErr_SetFromErrno(PyObject*)); 428PyAPI_FUNC_DECL(PyObject* PyErr_SetFromErrnoWithFilename(PyObject*, 429 const char*)); 430PyAPI_FUNC_DECL(PyObject* PyErr_SetFromErrnoWithFilenameObject(PyObject*, 431 PyObject*)); 432PyAPI_FUNC_DECL(PyObject* PyErr_SetFromErrnoWithFilenameObjects(PyObject*, 433 PyObject*, 434 PyObject*)); 435PyAPI_FUNC_DECL(PyObject* PyErr_SetFromWindowsErr(int)); 436PyAPI_FUNC_DECL(PyObject* PyErr_SetFromWindowsErrWithFilename(int, 437 const char*)); 438PyAPI_FUNC_DECL(PyObject* PyErr_SetImportError(PyObject*, PyObject*, 439 PyObject*)); 440PyAPI_FUNC_DECL(PyObject* PyErr_SetImportErrorSubclass(PyObject*, PyObject*, 441 PyObject*, PyObject*)); 442PyAPI_FUNC_DECL(void PyErr_SetInterrupt(void)); 443PyAPI_FUNC_DECL(void PyErr_SetNone(PyObject*)); 444PyAPI_FUNC_DECL(void PyErr_SetObject(PyObject*, PyObject*)); 445PyAPI_FUNC_DECL(void PyErr_SetString(PyObject*, const char*)); 446PyAPI_FUNC_DECL(void PyErr_SyntaxLocation(const char*, int)); 447PyAPI_FUNC_DECL(void PyErr_SyntaxLocationEx(const char*, int, int)); 448PyAPI_FUNC_DECL(void PyErr_SyntaxLocationObject(PyObject*, int, int)); 449PyAPI_FUNC_DECL(int PyErr_WarnEx(PyObject*, const char*, Py_ssize_t)); 450PyAPI_FUNC_DECL(int PyErr_WarnExplicit(PyObject*, const char*, const char*, int, 451 const char*, PyObject*)); 452PyAPI_FUNC_DECL(int PyErr_WarnExplicitObject(PyObject*, PyObject*, PyObject*, 453 int, PyObject*, PyObject*)); 454PyAPI_FUNC_DECL(int PyErr_WarnFormat(PyObject*, Py_ssize_t, const char*, ...)); 455PyAPI_FUNC_DECL(void PyErr_WriteUnraisable(PyObject*)); 456PyAPI_FUNC_DECL(void PyEval_AcquireLock(void)); 457PyAPI_FUNC_DECL(void PyEval_AcquireThread(PyThreadState*)); 458PyAPI_FUNC_DECL(PyObject* PyEval_CallFunction(PyObject*, const char*, ...)); 459PyAPI_FUNC_DECL(PyObject* PyEval_CallMethod(PyObject*, const char*, const char*, 460 ...)); 461PyAPI_FUNC_DECL(PyObject* PyEval_CallObjectWithKeywords(PyObject*, PyObject*, 462 PyObject*)); 463PyAPI_FUNC_DECL(PyObject* PyEval_EvalCode(PyObject*, PyObject*, PyObject*)); 464PyAPI_FUNC_DECL(PyObject* PyEval_EvalCodeEx(PyObject*, PyObject*, PyObject*, 465 PyObject**, int, PyObject**, int, 466 PyObject**, int, PyObject*, 467 PyObject*)); 468PyAPI_FUNC_DECL(PyObject* PyEval_EvalFrame(PyFrameObject*)); 469PyAPI_FUNC_DECL(PyObject* PyEval_EvalFrameEx(PyFrameObject*, int)); 470PyAPI_FUNC_DECL(PyObject* PyEval_GetBuiltins(void)); 471PyAPI_FUNC_DECL(PyFrameObject* PyEval_GetFrame(void)); 472PyAPI_FUNC_DECL(const char* PyEval_GetFuncDesc(PyObject*)); 473PyAPI_FUNC_DECL(const char* PyEval_GetFuncName(PyObject*)); 474PyAPI_FUNC_DECL(PyObject* PyEval_GetGlobals(void)); 475PyAPI_FUNC_DECL(PyObject* PyEval_GetLocals(void)); 476PyAPI_FUNC_DECL(void PyEval_InitThreads(void)); 477PyAPI_FUNC_DECL(int PyEval_MergeCompilerFlags(PyCompilerFlags*)); 478PyAPI_FUNC_DECL(void PyEval_ReleaseLock(void)); 479PyAPI_FUNC_DECL(void PyEval_ReleaseThread(PyThreadState*)); 480PyAPI_FUNC_DECL(void PyEval_RestoreThread(PyThreadState*)); 481PyAPI_FUNC_DECL(PyThreadState* PyEval_SaveThread(void)); 482PyAPI_FUNC_DECL(void PyEval_SetProfile(Py_tracefunc, PyObject*)); 483PyAPI_FUNC_DECL(void PyEval_SetTrace(Py_tracefunc, PyObject*)); 484PyAPI_FUNC_DECL(PyObject* PyException_GetCause(PyObject*)); 485PyAPI_FUNC_DECL(PyObject* PyException_GetContext(PyObject*)); 486PyAPI_FUNC_DECL(PyObject* PyException_GetTraceback(PyObject*)); 487PyAPI_FUNC_DECL(void PyException_SetCause(PyObject*, PyObject*)); 488PyAPI_FUNC_DECL(void PyException_SetContext(PyObject*, PyObject*)); 489PyAPI_FUNC_DECL(int PyException_SetTraceback(PyObject*, PyObject*)); 490PyAPI_FUNC_DECL(PyObject* PyFile_GetLine(PyObject*, int)); 491PyAPI_FUNC_DECL(int PyFile_SetOpenCodeHook(Py_OpenCodeHookFunction hook, 492 void* userData)); 493PyAPI_FUNC_DECL(int PyFile_WriteObject(PyObject*, PyObject*, int)); 494PyAPI_FUNC_DECL(int PyFile_WriteString(const char*, PyObject*)); 495PyAPI_FUNC_DECL(double PyFloat_AsDouble(PyObject*)); 496PyAPI_FUNC_DECL(PyObject* PyFloat_FromDouble(double)); 497PyAPI_FUNC_DECL(PyObject* PyFloat_FromString(PyObject*)); 498PyAPI_FUNC_DECL(PyObject* PyFloat_GetInfo(void)); 499PyAPI_FUNC_DECL(double PyFloat_GetMax(void)); 500PyAPI_FUNC_DECL(double PyFloat_GetMin(void)); 501PyAPI_FUNC_DECL(void PyFrame_FastToLocals(PyFrameObject*)); 502PyAPI_FUNC_DECL(int PyFrame_GetLineNumber(PyFrameObject*)); 503PyAPI_FUNC_DECL(void PyFrame_LocalsToFast(PyFrameObject*, int)); 504PyAPI_FUNC_DECL(PyFrameObject* PyFrame_New(PyThreadState*, PyCodeObject*, 505 PyObject*, PyObject*)); 506PyAPI_FUNC_DECL(PyObject* PyFrozenSet_New(PyObject*)); 507PyAPI_FUNC_DECL(PyFutureFeatures* PyFuture_FromAST(struct _mod*, const char*)); 508PyAPI_FUNC_DECL(PyFutureFeatures* PyFuture_FromASTObject(struct _mod*, 509 PyObject*)); 510PyAPI_FUNC_DECL(Py_ssize_t PyGC_Collect(void)); 511PyAPI_FUNC_DECL(int PyGILState_Check(void)); 512PyAPI_FUNC_DECL(PyGILState_STATE PyGILState_Ensure(void)); 513PyAPI_FUNC_DECL(PyThreadState* PyGILState_GetThisThreadState(void)); 514PyAPI_FUNC_DECL(void PyGILState_Release(PyGILState_STATE)); 515PyAPI_FUNC_DECL(PyObject* PyImport_AddModule(const char*)); 516PyAPI_FUNC_DECL(PyObject* PyImport_AddModuleObject(PyObject*)); 517PyAPI_FUNC_DECL(int PyImport_AppendInittab(const char*, PyObject* (*)(void))); 518PyAPI_FUNC_DECL(void PyImport_Cleanup(void)); 519PyAPI_FUNC_DECL(PyObject* PyImport_ExecCodeModule(const char*, PyObject*)); 520PyAPI_FUNC_DECL(PyObject* PyImport_ExecCodeModuleEx(const char*, PyObject*, 521 const char*)); 522PyAPI_FUNC_DECL(PyObject* PyImport_ExecCodeModuleObject(PyObject*, PyObject*, 523 PyObject*, PyObject*)); 524PyAPI_FUNC_DECL(PyObject* PyImport_ExecCodeModuleWithPathnames( 525 const char*, PyObject*, const char*, const char*)); 526PyAPI_FUNC_DECL(long PyImport_GetMagicNumber(void)); 527PyAPI_FUNC_DECL(const char* PyImport_GetMagicTag(void)); 528PyAPI_FUNC_DECL(PyObject* PyImport_GetModule(PyObject* name)); 529PyAPI_FUNC_DECL(PyObject* PyImport_GetModuleDict(void)); 530PyAPI_FUNC_DECL(PyObject* PyImport_Import(PyObject*)); 531PyAPI_FUNC_DECL(int PyImport_ImportFrozenModule(const char*)); 532PyAPI_FUNC_DECL(int PyImport_ImportFrozenModuleObject(PyObject*)); 533PyAPI_FUNC_DECL(PyObject* PyImport_ImportModule(const char*)); 534PyAPI_FUNC_DECL(PyObject* PyImport_ImportModuleLevel(const char*, PyObject*, 535 PyObject*, PyObject*, 536 int)); 537PyAPI_FUNC_DECL(PyObject* PyImport_ImportModuleLevelObject(PyObject*, PyObject*, 538 PyObject*, PyObject*, 539 int)); 540PyAPI_FUNC_DECL(PyObject* PyImport_ImportModuleNoBlock(const char*)); 541PyAPI_FUNC_DECL(PyObject* PyImport_ReloadModule(PyObject*)); 542PyAPI_FUNC_DECL(int PyInstanceMethod_Check(PyObject*)); 543PyAPI_FUNC_DECL(PyObject* PyInstanceMethod_GET_FUNCTION_Func(PyObject*)); 544PyAPI_FUNC_DECL(PyObject* PyInstanceMethod_New(PyObject*)); 545PyAPI_FUNC_DECL(void PyInterpreterState_Clear(PyInterpreterState*)); 546PyAPI_FUNC_DECL(void PyInterpreterState_Delete(PyInterpreterState*)); 547PyAPI_FUNC_DECL(PyInterpreterState* PyInterpreterState_Head(void)); 548PyAPI_FUNC_DECL(PyInterpreterState* PyInterpreterState_Main(void)); 549PyAPI_FUNC_DECL( 550 PyInterpreterState* PyInterpreterState_Next(PyInterpreterState*)); 551PyAPI_FUNC_DECL( 552 PyThreadState* PyInterpreterState_ThreadHead(PyInterpreterState*)); 553PyAPI_FUNC_DECL(PyObject* PyIter_Next(PyObject*)); 554PyAPI_FUNC_DECL(int PyList_Append(PyObject*, PyObject*)); 555PyAPI_FUNC_DECL(PyObject* PyList_AsTuple(PyObject*)); 556PyAPI_FUNC_DECL(PyObject* PyList_GetItem(PyObject*, Py_ssize_t)); 557PyAPI_FUNC_DECL(PyObject* PyList_GetSlice(PyObject*, Py_ssize_t, Py_ssize_t)); 558PyAPI_FUNC_DECL(int PyList_Insert(PyObject*, Py_ssize_t, PyObject*)); 559PyAPI_FUNC_DECL(PyObject* PyList_New(Py_ssize_t)); 560PyAPI_FUNC_DECL(int PyList_Reverse(PyObject*)); 561PyAPI_FUNC_DECL(int PyList_SetItem(PyObject*, Py_ssize_t, PyObject*)); 562PyAPI_FUNC_DECL(int PyList_SetSlice(PyObject*, Py_ssize_t, Py_ssize_t, 563 PyObject*)); 564PyAPI_FUNC_DECL(Py_ssize_t PyList_Size(PyObject*)); 565PyAPI_FUNC_DECL(int PyList_Sort(PyObject*)); 566PyAPI_FUNC_DECL(double PyLong_AsDouble(PyObject*)); 567PyAPI_FUNC_DECL(long PyLong_AsLong(PyObject*)); 568PyAPI_FUNC_DECL(long PyLong_AsLongAndOverflow(PyObject*, int*)); 569PyAPI_FUNC_DECL(long long PyLong_AsLongLong(PyObject*)); 570PyAPI_FUNC_DECL(long long PyLong_AsLongLongAndOverflow(PyObject*, int*)); 571PyAPI_FUNC_DECL(pid_t PyLong_AsPid(PyObject*)); 572PyAPI_FUNC_DECL(size_t PyLong_AsSize_t(PyObject*)); 573PyAPI_FUNC_DECL(Py_ssize_t PyLong_AsSsize_t(PyObject*)); 574PyAPI_FUNC_DECL(unsigned long PyLong_AsUnsignedLong(PyObject*)); 575PyAPI_FUNC_DECL(unsigned long long PyLong_AsUnsignedLongLong(PyObject*)); 576PyAPI_FUNC_DECL(unsigned long long PyLong_AsUnsignedLongLongMask(PyObject*)); 577PyAPI_FUNC_DECL(unsigned long PyLong_AsUnsignedLongMask(PyObject*)); 578PyAPI_FUNC_DECL(void* PyLong_AsVoidPtr(PyObject*)); 579PyAPI_FUNC_DECL(PyObject* PyLong_FromDouble(double)); 580PyAPI_FUNC_DECL(PyObject* PyLong_FromLong(long)); 581PyAPI_FUNC_DECL(PyObject* PyLong_FromLongLong(long long)); 582PyAPI_FUNC_DECL(PyObject* PyLong_FromPid(pid_t)); 583PyAPI_FUNC_DECL(PyObject* PyLong_FromSize_t(size_t)); 584PyAPI_FUNC_DECL(PyObject* PyLong_FromSsize_t(Py_ssize_t)); 585PyAPI_FUNC_DECL(PyObject* PyLong_FromString(const char*, char**, int)); 586PyAPI_FUNC_DECL(PyObject* PyLong_FromUnsignedLong(unsigned long)); 587PyAPI_FUNC_DECL(PyObject* PyLong_FromUnsignedLongLong(unsigned long long)); 588PyAPI_FUNC_DECL(PyObject* PyLong_FromVoidPtr(void*)); 589PyAPI_FUNC_DECL(PyObject* PyLong_GetInfo(void)); 590PyAPI_FUNC_DECL(int PyMapping_Check(PyObject*)); 591PyAPI_FUNC_DECL(int PyMapping_DelItem(PyObject*, PyObject*)); 592PyAPI_FUNC_DECL(int PyMapping_DelItemString(PyObject*, const char*)); 593PyAPI_FUNC_DECL(PyObject* PyMapping_GetItemString(PyObject*, const char*)); 594PyAPI_FUNC_DECL(int PyMapping_HasKey(PyObject*, PyObject*)); 595PyAPI_FUNC_DECL(int PyMapping_HasKeyString(PyObject*, const char*)); 596PyAPI_FUNC_DECL(PyObject* PyMapping_Items(PyObject*)); 597PyAPI_FUNC_DECL(PyObject* PyMapping_Keys(PyObject*)); 598PyAPI_FUNC_DECL(Py_ssize_t PyMapping_Length(PyObject*)); 599PyAPI_FUNC_DECL(int PyMapping_SetItemString(PyObject*, const char*, PyObject*)); 600PyAPI_FUNC_DECL(Py_ssize_t PyMapping_Size(PyObject*)); 601PyAPI_FUNC_DECL(PyObject* PyMapping_Values(PyObject*)); 602PyAPI_FUNC_DECL(void* PyMem_Calloc(size_t, size_t)); 603PyAPI_FUNC_DECL(void PyMem_Del(void*)); 604PyAPI_FUNC_DECL(void PyMem_Free(void*)); 605PyAPI_FUNC_DECL(void* PyMem_Malloc(size_t)); 606PyAPI_FUNC_DECL(void* PyMem_RawCalloc(size_t, size_t)); 607PyAPI_FUNC_DECL(void PyMem_RawFree(void*)); 608PyAPI_FUNC_DECL(void* PyMem_RawMalloc(size_t)); 609PyAPI_FUNC_DECL(void* PyMem_RawRealloc(void*, size_t)); 610PyAPI_FUNC_DECL(void* PyMem_Realloc(void*, size_t)); 611PyAPI_FUNC_DECL(PyObject* PyMemoryView_FromMemory(char*, Py_ssize_t, int)); 612PyAPI_FUNC_DECL(PyObject* PyMemoryView_FromObject(PyObject*)); 613PyAPI_FUNC_DECL(PyObject* PyMemoryView_GetContiguous(PyObject*, int, char)); 614PyAPI_FUNC_DECL(PyObject* PyMethod_Function(PyObject*)); 615PyAPI_FUNC_DECL(PyObject* PyMethod_GET_FUNCTION_Func(PyObject*)); 616PyAPI_FUNC_DECL(PyObject* PyMethod_GET_SELF_Func(PyObject*)); 617PyAPI_FUNC_DECL(PyObject* PyMethod_New(PyObject*, PyObject*)); 618PyAPI_FUNC_DECL(PyObject* PyMethod_Self(PyObject*)); 619PyAPI_FUNC_DECL(PyObject* PyModuleDef_Init(struct PyModuleDef*)); 620PyAPI_FUNC_DECL(int PyModule_AddFunctions(PyObject*, PyMethodDef*)); 621PyAPI_FUNC_DECL(int PyModule_AddIntConstant(PyObject*, const char*, long)); 622PyAPI_FUNC_DECL(int PyModule_AddObject(PyObject*, const char*, PyObject*)); 623PyAPI_FUNC_DECL(int PyModule_AddStringConstant(PyObject*, const char*, 624 const char*)); 625PyAPI_FUNC_DECL(PyObject* PyModule_Create2(struct PyModuleDef*, int)); 626PyAPI_FUNC_DECL(int PyModule_ExecDef(PyObject*, PyModuleDef*)); 627PyAPI_FUNC_DECL(PyObject* PyModule_FromDefAndSpec2(struct PyModuleDef*, 628 PyObject*, int)); 629PyAPI_FUNC_DECL(PyModuleDef* PyModule_GetDef(PyObject*)); 630PyAPI_FUNC_DECL(PyObject* PyModule_GetDict(PyObject*)); 631PyAPI_FUNC_DECL(const char* PyModule_GetFilename(PyObject*)); 632PyAPI_FUNC_DECL(PyObject* PyModule_GetFilenameObject(PyObject*)); 633PyAPI_FUNC_DECL(const char* PyModule_GetName(PyObject*)); 634PyAPI_FUNC_DECL(PyObject* PyModule_GetNameObject(PyObject*)); 635PyAPI_FUNC_DECL(void* PyModule_GetState(PyObject*)); 636PyAPI_FUNC_DECL(PyObject* PyModule_New(const char*)); 637PyAPI_FUNC_DECL(PyObject* PyModule_NewObject(PyObject*)); 638PyAPI_FUNC_DECL(int PyModule_SetDocString(PyObject*, const char*)); 639PyAPI_FUNC_DECL(PyCodeObject* PyNode_Compile(struct _node*, const char*)); 640PyAPI_FUNC_DECL(PyObject* PyNumber_Absolute(PyObject*)); 641PyAPI_FUNC_DECL(PyObject* PyNumber_Add(PyObject*, PyObject*)); 642PyAPI_FUNC_DECL(PyObject* PyNumber_And(PyObject*, PyObject*)); 643PyAPI_FUNC_DECL(Py_ssize_t PyNumber_AsSsize_t(PyObject*, PyObject*)); 644PyAPI_FUNC_DECL(int PyNumber_Check(PyObject*)); 645PyAPI_FUNC_DECL(PyObject* PyNumber_Divmod(PyObject*, PyObject*)); 646PyAPI_FUNC_DECL(PyObject* PyNumber_Float(PyObject*)); 647PyAPI_FUNC_DECL(PyObject* PyNumber_FloorDivide(PyObject*, PyObject*)); 648PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceAdd(PyObject*, PyObject*)); 649PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceAnd(PyObject*, PyObject*)); 650PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceFloorDivide(PyObject*, PyObject*)); 651PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceLshift(PyObject*, PyObject*)); 652PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceMatrixMultiply(PyObject*, PyObject*)); 653PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceMultiply(PyObject*, PyObject*)); 654PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceOr(PyObject*, PyObject*)); 655PyAPI_FUNC_DECL(PyObject* PyNumber_InPlacePower(PyObject*, PyObject*, 656 PyObject*)); 657PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceRemainder(PyObject*, PyObject*)); 658PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceRshift(PyObject*, PyObject*)); 659PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceSubtract(PyObject*, PyObject*)); 660PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceTrueDivide(PyObject*, PyObject*)); 661PyAPI_FUNC_DECL(PyObject* PyNumber_InPlaceXor(PyObject*, PyObject*)); 662PyAPI_FUNC_DECL(PyObject* PyNumber_Index(PyObject*)); 663PyAPI_FUNC_DECL(PyObject* PyNumber_Invert(PyObject*)); 664PyAPI_FUNC_DECL(PyObject* PyNumber_Long(PyObject*)); 665PyAPI_FUNC_DECL(PyObject* PyNumber_Lshift(PyObject*, PyObject*)); 666PyAPI_FUNC_DECL(PyObject* PyNumber_MatrixMultiply(PyObject*, PyObject*)); 667PyAPI_FUNC_DECL(PyObject* PyNumber_Multiply(PyObject*, PyObject*)); 668PyAPI_FUNC_DECL(PyObject* PyNumber_Negative(PyObject*)); 669PyAPI_FUNC_DECL(PyObject* PyNumber_Or(PyObject*, PyObject*)); 670PyAPI_FUNC_DECL(PyObject* PyNumber_Positive(PyObject*)); 671PyAPI_FUNC_DECL(PyObject* PyNumber_Power(PyObject*, PyObject*, PyObject*)); 672PyAPI_FUNC_DECL(PyObject* PyNumber_Remainder(PyObject*, PyObject*)); 673PyAPI_FUNC_DECL(PyObject* PyNumber_Rshift(PyObject*, PyObject*)); 674PyAPI_FUNC_DECL(PyObject* PyNumber_Subtract(PyObject*, PyObject*)); 675PyAPI_FUNC_DECL(PyObject* PyNumber_ToBase(PyObject*, int)); 676PyAPI_FUNC_DECL(PyObject* PyNumber_TrueDivide(PyObject*, PyObject*)); 677PyAPI_FUNC_DECL(PyObject* PyNumber_Xor(PyObject*, PyObject*)); 678PyAPI_FUNC_DECL(int PyODict_DelItem(PyObject*, PyObject*)); 679PyAPI_FUNC_DECL(PyObject* PyODict_New(void)); 680PyAPI_FUNC_DECL(int PyODict_SetItem(PyObject*, PyObject*, PyObject*)); 681PyAPI_FUNC_DECL(void PyOS_AfterFork(void)); 682PyAPI_FUNC_DECL(void PyOS_AfterFork_Child(void)); 683PyAPI_FUNC_DECL(void PyOS_AfterFork_Parent(void)); 684PyAPI_FUNC_DECL(void PyOS_BeforeFork(void)); 685PyAPI_FUNC_DECL(int PyOS_CheckStack(void)); 686PyAPI_FUNC_DECL(PyObject* PyOS_FSPath(PyObject*)); 687PyAPI_FUNC_DECL(void PyOS_InitInterrupts(void)); 688PyAPI_FUNC_DECL(int PyOS_InterruptOccurred(void)); 689PyAPI_FUNC_DECL(char* PyOS_double_to_string(double, char, int, int, int*)); 690PyAPI_FUNC_DECL(PyOS_sighandler_t PyOS_getsig(int)); 691PyAPI_FUNC_DECL(int PyOS_stricmp(const char*, const char*)); 692PyAPI_FUNC_DECL(int PyOS_strnicmp(const char*, const char*, Py_ssize_t)); 693PyAPI_FUNC_DECL(PyOS_sighandler_t PyOS_setsig(int, PyOS_sighandler_t)); 694PyAPI_FUNC_DECL(int PyOS_snprintf(char*, size_t, const char*, ...)); 695PyAPI_FUNC_DECL(double PyOS_string_to_double(const char*, char**, PyObject*)); 696PyAPI_FUNC_DECL(long PyOS_strtol(const char*, char**, int)); 697PyAPI_FUNC_DECL(unsigned long PyOS_strtoul(const char*, char**, int)); 698PyAPI_FUNC_DECL(int PyOS_vsnprintf(char*, size_t, const char*, va_list)); 699PyAPI_FUNC_DECL(PyObject* PyObject_ASCII(PyObject*)); 700PyAPI_FUNC_DECL(int PyObject_AsCharBuffer(PyObject*, const char**, 701 Py_ssize_t*)); 702PyAPI_FUNC_DECL(int PyObject_AsFileDescriptor(PyObject*)); 703PyAPI_FUNC_DECL(int PyObject_AsReadBuffer(PyObject*, const void**, 704 Py_ssize_t*)); 705PyAPI_FUNC_DECL(int PyObject_AsWriteBuffer(PyObject*, void**, Py_ssize_t*)); 706PyAPI_FUNC_DECL(PyObject* PyObject_Bytes(PyObject*)); 707PyAPI_FUNC_DECL(PyObject* PyObject_Call(PyObject*, PyObject*, PyObject*)); 708PyAPI_FUNC_DECL(int PyObject_CallFinalizerFromDealloc(PyObject*)); 709PyAPI_FUNC_DECL(PyObject* PyObject_CallFunction(PyObject*, const char*, ...)); 710PyAPI_FUNC_DECL(PyObject* PyObject_CallFunctionObjArgs(PyObject*, ...)); 711PyAPI_FUNC_DECL(PyObject* PyObject_CallMethod(PyObject*, const char*, 712 const char*, ...)); 713PyAPI_FUNC_DECL(PyObject* PyObject_CallMethodObjArgs(PyObject*, PyObject*, 714 ...)); 715PyAPI_FUNC_DECL(PyObject* PyObject_CallObject(PyObject*, PyObject*)); 716PyAPI_FUNC_DECL(void* PyObject_Calloc(size_t, size_t)); 717PyAPI_FUNC_DECL(int PyObject_CheckReadBuffer(PyObject*)); 718PyAPI_FUNC_DECL(void PyObject_ClearWeakRefs(PyObject*)); 719PyAPI_FUNC_DECL(int PyObject_DelAttr(PyObject*, PyObject*)); 720PyAPI_FUNC_DECL(int PyObject_DelAttrString(PyObject*, const char*)); 721PyAPI_FUNC_DECL(int PyObject_DelItem(PyObject*, PyObject*)); 722PyAPI_FUNC_DECL(int PyObject_DelItemString(PyObject*, const char*)); 723PyAPI_FUNC_DECL(PyObject* PyObject_Dir(PyObject*)); 724PyAPI_FUNC_DECL(PyObject* PyObject_Format(PyObject*, PyObject*)); 725PyAPI_FUNC_DECL(void PyObject_Free(void*)); 726PyAPI_FUNC_DECL(void PyObject_GC_Del(void*)); 727PyAPI_FUNC_DECL(void PyObject_GC_Track(void*)); 728PyAPI_FUNC_DECL(void PyObject_GC_UnTrack(void*)); 729PyAPI_FUNC_DECL(PyObject* PyObject_GenericGetAttr(PyObject*, PyObject*)); 730PyAPI_FUNC_DECL(PyObject* PyObject_GenericGetDict(PyObject*, void*)); 731PyAPI_FUNC_DECL(int PyObject_GenericSetAttr(PyObject*, PyObject*, PyObject*)); 732PyAPI_FUNC_DECL(int PyObject_GenericSetDict(PyObject*, PyObject*, void*)); 733PyAPI_FUNC_DECL(PyObject* PyObject_GetAttr(PyObject*, PyObject*)); 734PyAPI_FUNC_DECL(PyObject* PyObject_GetAttrString(PyObject*, const char*)); 735PyAPI_FUNC_DECL(int PyObject_GetBuffer(PyObject*, Py_buffer*, int)); 736PyAPI_FUNC_DECL(PyObject* PyObject_GetItem(PyObject*, PyObject*)); 737PyAPI_FUNC_DECL(PyObject* PyObject_GetIter(PyObject*)); 738PyAPI_FUNC_DECL(int PyObject_HasAttr(PyObject*, PyObject*)); 739PyAPI_FUNC_DECL(int PyObject_HasAttrString(PyObject*, const char*)); 740PyAPI_FUNC_DECL(Py_hash_t PyObject_Hash(PyObject*)); 741PyAPI_FUNC_DECL(Py_hash_t PyObject_HashNotImplemented(PyObject*)); 742PyAPI_FUNC_DECL(PyObject* PyObject_Init(PyObject*, PyTypeObject*)); 743PyAPI_FUNC_DECL(PyVarObject* PyObject_InitVar(PyVarObject*, PyTypeObject*, 744 Py_ssize_t)); 745PyAPI_FUNC_DECL(int PyObject_IsInstance(PyObject*, PyObject*)); 746PyAPI_FUNC_DECL(int PyObject_IsSubclass(PyObject*, PyObject*)); 747PyAPI_FUNC_DECL(int PyObject_IsTrue(PyObject*)); 748PyAPI_FUNC_DECL(Py_ssize_t PyObject_Length(PyObject*)); 749PyAPI_FUNC_DECL(Py_ssize_t PyObject_LengthHint(PyObject*, Py_ssize_t)); 750PyAPI_FUNC_DECL(void* PyObject_Malloc(size_t)); 751PyAPI_FUNC_DECL(int PyObject_Not(PyObject*)); 752PyAPI_FUNC_DECL(int PyObject_Print(PyObject*, FILE*, int)); 753PyAPI_FUNC_DECL(void* PyObject_Realloc(void*, size_t)); 754PyAPI_FUNC_DECL(PyObject* PyObject_Repr(PyObject*)); 755PyAPI_FUNC_DECL(PyObject* PyObject_RichCompare(PyObject*, PyObject*, int)); 756PyAPI_FUNC_DECL(int PyObject_RichCompareBool(PyObject*, PyObject*, int)); 757PyAPI_FUNC_DECL(PyObject* PyObject_SelfIter(PyObject*)); 758PyAPI_FUNC_DECL(int PyObject_SetAttr(PyObject*, PyObject*, PyObject*)); 759PyAPI_FUNC_DECL(int PyObject_SetAttrString(PyObject*, const char*, PyObject*)); 760PyAPI_FUNC_DECL(int PyObject_SetItem(PyObject*, PyObject*, PyObject*)); 761PyAPI_FUNC_DECL(Py_ssize_t PyObject_Size(PyObject*)); 762PyAPI_FUNC_DECL(PyObject* PyObject_Str(PyObject*)); 763PyAPI_FUNC_DECL(PyObject* PyObject_Type(PyObject*)); 764PyAPI_FUNC_DECL(const char* PyObject_TypeName(PyObject*)); 765PyAPI_FUNC_DECL(struct _mod* PyParser_ASTFromFile(FILE*, const char*, 766 const char*, int, const char*, 767 const char*, PyCompilerFlags*, 768 int*, PyArena*)); 769PyAPI_FUNC_DECL(struct _mod* PyParser_ASTFromFileObject( 770 FILE*, PyObject*, const char*, int, const char*, const char*, 771 PyCompilerFlags*, int*, PyArena*)); 772PyAPI_FUNC_DECL(struct _mod* PyParser_ASTFromString(const char*, const char*, 773 int, PyCompilerFlags*, 774 PyArena*)); 775PyAPI_FUNC_DECL(struct _mod* PyParser_ASTFromStringObject( 776 const char*, PyObject*, int, PyCompilerFlags*, PyArena*)); 777PyAPI_FUNC_DECL(struct _node* PyParser_SimpleParseFileFlags(FILE*, const char*, 778 int, int)); 779PyAPI_FUNC_DECL(struct _node* PyParser_SimpleParseStringFlags(const char*, int, 780 int)); 781PyAPI_FUNC_DECL(struct _node* PyParser_SimpleParseStringFlagsFilename( 782 const char*, const char*, int, int)); 783PyAPI_FUNC_DECL(int PyRun_AnyFile(FILE*, const char*)); 784PyAPI_FUNC_DECL(int PyRun_AnyFileEx(FILE*, const char*, int)); 785PyAPI_FUNC_DECL(int PyRun_AnyFileExFlags(FILE*, const char*, int, 786 PyCompilerFlags*)); 787PyAPI_FUNC_DECL(int PyRun_AnyFileFlags(FILE*, const char*, PyCompilerFlags*)); 788PyAPI_FUNC_DECL(PyObject* PyRun_File(FILE*, const char*, int, PyObject*, 789 PyObject*)); 790PyAPI_FUNC_DECL(PyObject* PyRun_FileEx(FILE*, const char*, int, PyObject*, 791 PyObject*, int)); 792PyAPI_FUNC_DECL(PyObject* PyRun_FileExFlags(FILE*, const char*, int, PyObject*, 793 PyObject*, int, PyCompilerFlags*)); 794PyAPI_FUNC_DECL(PyObject* PyRun_FileFlags(FILE*, const char*, int, PyObject*, 795 PyObject*, PyCompilerFlags*)); 796PyAPI_FUNC_DECL(int PyRun_InteractiveLoop(FILE*, const char*)); 797PyAPI_FUNC_DECL(int PyRun_InteractiveLoopFlags(FILE*, const char*, 798 PyCompilerFlags*)); 799PyAPI_FUNC_DECL(int PyRun_SimpleFile(FILE*, const char*)); 800PyAPI_FUNC_DECL(int PyRun_SimpleFileEx(FILE*, const char*, int)); 801PyAPI_FUNC_DECL(int PyRun_SimpleFileExFlags(FILE*, const char*, int, 802 PyCompilerFlags*)); 803PyAPI_FUNC_DECL(int PyRun_SimpleString(const char*)); 804PyAPI_FUNC_DECL(int PyRun_SimpleStringFlags(const char*, PyCompilerFlags*)); 805PyAPI_FUNC_DECL(PyObject* PyRun_String(const char*, int, PyObject*, PyObject*)); 806PyAPI_FUNC_DECL(PyObject* PyRun_StringFlags(const char*, int, PyObject*, 807 PyObject*, PyCompilerFlags*)); 808PyAPI_FUNC_DECL(PyObject* PySeqIter_New(PyObject*)); 809PyAPI_FUNC_DECL(int PySequence_Check(PyObject*)); 810PyAPI_FUNC_DECL(PyObject* PySequence_Concat(PyObject*, PyObject*)); 811PyAPI_FUNC_DECL(int PySequence_Contains(PyObject*, PyObject*)); 812PyAPI_FUNC_DECL(Py_ssize_t PySequence_Count(PyObject*, PyObject*)); 813PyAPI_FUNC_DECL(int PySequence_DelItem(PyObject*, Py_ssize_t)); 814PyAPI_FUNC_DECL(int PySequence_DelSlice(PyObject*, Py_ssize_t, Py_ssize_t)); 815PyAPI_FUNC_DECL(PyObject* PySequence_Fast(PyObject*, const char*)); 816PyAPI_FUNC_DECL(PyObject* PySequence_GetItem(PyObject*, Py_ssize_t)); 817PyAPI_FUNC_DECL(PyObject* PySequence_GetSlice(PyObject*, Py_ssize_t, 818 Py_ssize_t)); 819PyAPI_FUNC_DECL(int PySequence_In(PyObject*, PyObject*)); 820PyAPI_FUNC_DECL(PyObject* PySequence_InPlaceConcat(PyObject*, PyObject*)); 821PyAPI_FUNC_DECL(PyObject* PySequence_InPlaceRepeat(PyObject*, Py_ssize_t)); 822PyAPI_FUNC_DECL(Py_ssize_t PySequence_Index(PyObject*, PyObject*)); 823PyAPI_FUNC_DECL(Py_ssize_t PySequence_Length(PyObject*)); 824PyAPI_FUNC_DECL(PyObject* PySequence_List(PyObject*)); 825PyAPI_FUNC_DECL(PyObject* PySequence_Repeat(PyObject*, Py_ssize_t)); 826PyAPI_FUNC_DECL(int PySequence_SetItem(PyObject*, Py_ssize_t, PyObject*)); 827PyAPI_FUNC_DECL(int PySequence_SetSlice(PyObject*, Py_ssize_t, Py_ssize_t, 828 PyObject*)); 829PyAPI_FUNC_DECL(Py_ssize_t PySequence_Size(PyObject*)); 830PyAPI_FUNC_DECL(PyObject* PySequence_Tuple(PyObject*)); 831PyAPI_FUNC_DECL(int PySet_Add(PyObject*, PyObject*)); 832PyAPI_FUNC_DECL(int PySet_Clear(PyObject*)); 833PyAPI_FUNC_DECL(int PySet_Contains(PyObject*, PyObject*)); 834PyAPI_FUNC_DECL(int PySet_Discard(PyObject*, PyObject*)); 835PyAPI_FUNC_DECL(PyObject* PySet_New(PyObject*)); 836PyAPI_FUNC_DECL(PyObject* PySet_Pop(PyObject*)); 837PyAPI_FUNC_DECL(Py_ssize_t PySet_Size(PyObject*)); 838PyAPI_FUNC_DECL(Py_ssize_t PySlice_AdjustIndices(Py_ssize_t, Py_ssize_t*, 839 Py_ssize_t*, Py_ssize_t)); 840PyAPI_FUNC_DECL(int PySlice_GetIndices(PyObject*, Py_ssize_t, Py_ssize_t*, 841 Py_ssize_t*, Py_ssize_t*)); 842PyAPI_FUNC_DECL(int PySlice_GetIndicesEx(PyObject*, Py_ssize_t, Py_ssize_t*, 843 Py_ssize_t*, Py_ssize_t*, 844 Py_ssize_t*)); 845PyAPI_FUNC_DECL(PyObject* PySlice_New(PyObject*, PyObject*, PyObject*)); 846PyAPI_FUNC_DECL(int PySlice_Unpack(PyObject*, Py_ssize_t*, Py_ssize_t*, 847 Py_ssize_t*)); 848PyAPI_FUNC_DECL(int PyState_AddModule(PyObject*, struct PyModuleDef*)); 849PyAPI_FUNC_DECL(PyObject* PyState_FindModule(struct PyModuleDef*)); 850PyAPI_FUNC_DECL(int PyState_RemoveModule(struct PyModuleDef*)); 851PyAPI_FUNC_DECL(PyObject* PyStaticMethod_New(PyObject*)); 852PyAPI_FUNC_DECL(PyObject* PyStructSequence_GetItem(PyObject*, Py_ssize_t)); 853PyAPI_FUNC_DECL(int PyStructSequence_InitType2(PyTypeObject*, 854 PyStructSequence_Desc*)); 855PyAPI_FUNC_DECL(PyObject* PyStructSequence_New(PyTypeObject*)); 856PyAPI_FUNC_DECL(PyTypeObject* PyStructSequence_NewType(PyStructSequence_Desc*)); 857PyAPI_FUNC_DECL(void PyStructSequence_SetItem(PyObject*, Py_ssize_t, 858 PyObject*)); 859PyAPI_FUNC_DECL(void PySys_AddWarnOption(const wchar_t*)); 860PyAPI_FUNC_DECL(void PySys_AddWarnOptionUnicode(PyObject*)); 861PyAPI_FUNC_DECL(void PySys_AddXOption(const wchar_t*)); 862PyAPI_FUNC_DECL(int PySys_Audit(const char*, const char*, ...)); 863PyAPI_FUNC_DECL(void PySys_FormatStderr(const char*, ...)); 864PyAPI_FUNC_DECL(void PySys_FormatStdout(const char*, ...)); 865PyAPI_FUNC_DECL(PyObject* PySys_GetObject(const char*)); 866PyAPI_FUNC_DECL(PyObject* PySys_GetXOptions(void)); 867PyAPI_FUNC_DECL(int PySys_HasWarnOptions(void)); 868PyAPI_FUNC_DECL(void PySys_ResetWarnOptions(void)); 869PyAPI_FUNC_DECL(void PySys_SetArgv(int, wchar_t**)); 870PyAPI_FUNC_DECL(void PySys_SetArgvEx(int, wchar_t**, int)); 871PyAPI_FUNC_DECL(int PySys_SetObject(const char*, PyObject*)); 872PyAPI_FUNC_DECL(void PySys_SetPath(const wchar_t*)); 873PyAPI_FUNC_DECL(void PySys_WriteStderr(const char*, ...)); 874PyAPI_FUNC_DECL(void PySys_WriteStdout(const char*, ...)); 875PyAPI_FUNC_DECL(void PyThreadState_Clear(PyThreadState*)); 876PyAPI_FUNC_DECL(void PyThreadState_Delete(PyThreadState*)); 877PyAPI_FUNC_DECL(void PyThreadState_DeleteCurrent(void)); 878PyAPI_FUNC_DECL(PyThreadState* PyThreadState_Get(void)); 879PyAPI_FUNC_DECL(PyObject* PyThreadState_GetDict(void)); 880PyAPI_FUNC_DECL(PyThreadState* PyThreadState_New(PyInterpreterState*)); 881PyAPI_FUNC_DECL(PyThreadState* PyThreadState_Next(PyThreadState*)); 882PyAPI_FUNC_DECL(int PyThreadState_SetAsyncExc(unsigned long, PyObject*)); 883PyAPI_FUNC_DECL(PyThreadState* PyThreadState_Swap(PyThreadState*)); 884PyAPI_FUNC_DECL(PyObject* PyThread_GetInfo(void)); 885PyAPI_FUNC_DECL(void PyThread_ReInitTLS(void)); 886PyAPI_FUNC_DECL(int PyThread_acquire_lock(PyThread_type_lock, int)); 887PyAPI_FUNC_DECL(PyLockStatus PyThread_acquire_lock_timed(PyThread_type_lock, 888 PY_TIMEOUT_T, int)); 889PyAPI_FUNC_DECL(PyThread_type_lock PyThread_allocate_lock(void)); 890PyAPI_FUNC_DECL(int PyThread_create_key(void)); 891PyAPI_FUNC_DECL(void PyThread_delete_key(int)); 892PyAPI_FUNC_DECL(void PyThread_delete_key_value(int)); 893PyAPI_FUNC_DECL(void PyThread_exit_thread(void)); 894PyAPI_FUNC_DECL(void PyThread_free_lock(PyThread_type_lock)); 895PyAPI_FUNC_DECL(void* PyThread_get_key_value(int)); 896PyAPI_FUNC_DECL(size_t PyThread_get_stacksize(void)); 897PyAPI_FUNC_DECL(unsigned long PyThread_get_thread_ident(void)); 898PyAPI_FUNC_DECL(void PyThread_init_thread(void)); 899PyAPI_FUNC_DECL(void PyThread_release_lock(PyThread_type_lock)); 900PyAPI_FUNC_DECL(int PyThread_set_key_value(int, void*)); 901PyAPI_FUNC_DECL(int PyThread_set_stacksize(size_t)); 902PyAPI_FUNC_DECL(long PyThread_start_new_thread(void (*)(void*), void*)); 903PyAPI_FUNC_DECL(int PyToken_OneChar(int)); 904PyAPI_FUNC_DECL(int PyToken_TwoChars(int, int)); 905PyAPI_FUNC_DECL(int PyToken_ThreeChars(int, int, int)); 906PyAPI_FUNC_DECL(int PyTraceBack_Here(PyFrameObject*)); 907PyAPI_FUNC_DECL(int PyTraceBack_Print(PyObject*, PyObject*)); 908PyAPI_FUNC_DECL(PyObject* PyTuple_GetItem(PyObject*, Py_ssize_t)); 909PyAPI_FUNC_DECL(PyObject* PyTuple_GetSlice(PyObject*, Py_ssize_t, Py_ssize_t)); 910PyAPI_FUNC_DECL(PyObject* PyTuple_New(Py_ssize_t)); 911PyAPI_FUNC_DECL(PyObject* PyTuple_Pack(Py_ssize_t, ...)); 912PyAPI_FUNC_DECL(int PyTuple_SetItem(PyObject*, Py_ssize_t, PyObject*)); 913PyAPI_FUNC_DECL(Py_ssize_t PyTuple_Size(PyObject*)); 914PyAPI_FUNC_DECL(unsigned int PyType_ClearCache(void)); 915PyAPI_FUNC_DECL(PyObject* PyType_FromSpec(PyType_Spec*)); 916PyAPI_FUNC_DECL(PyObject* PyType_FromSpecWithBases(PyType_Spec*, PyObject*)); 917PyAPI_FUNC_DECL(PyObject* PyType_GenericAlloc(PyTypeObject*, Py_ssize_t)); 918PyAPI_FUNC_DECL(PyObject* PyType_GenericNew(PyTypeObject*, PyObject*, 919 PyObject*)); 920PyAPI_FUNC_DECL(unsigned long PyType_GetFlags(PyTypeObject*)); 921PyAPI_FUNC_DECL(void* PyType_GetSlot(PyTypeObject*, int)); 922PyAPI_FUNC_DECL(int PyType_IsSubtype(PyTypeObject*, PyTypeObject*)); 923PyAPI_FUNC_DECL(void PyType_Modified(PyTypeObject*)); 924PyAPI_FUNC_DECL(int PyType_Ready(PyTypeObject*)); 925PyAPI_FUNC_DECL(PyObject* PyUnicodeDecodeError_Create(const char*, const char*, 926 Py_ssize_t, Py_ssize_t, 927 Py_ssize_t, const char*)); 928PyAPI_FUNC_DECL(PyObject* PyUnicodeDecodeError_GetEncoding(PyObject*)); 929PyAPI_FUNC_DECL(int PyUnicodeDecodeError_GetEnd(PyObject*, Py_ssize_t*)); 930PyAPI_FUNC_DECL(PyObject* PyUnicodeDecodeError_GetObject(PyObject*)); 931PyAPI_FUNC_DECL(PyObject* PyUnicodeDecodeError_GetReason(PyObject*)); 932PyAPI_FUNC_DECL(int PyUnicodeDecodeError_GetStart(PyObject*, Py_ssize_t*)); 933PyAPI_FUNC_DECL(int PyUnicodeDecodeError_SetEnd(PyObject*, Py_ssize_t)); 934PyAPI_FUNC_DECL(int PyUnicodeDecodeError_SetReason(PyObject*, const char*)); 935PyAPI_FUNC_DECL(int PyUnicodeDecodeError_SetStart(PyObject*, Py_ssize_t)); 936PyAPI_FUNC_DECL(PyObject* PyUnicodeEncodeError_GetEncoding(PyObject*)); 937PyAPI_FUNC_DECL(int PyUnicodeEncodeError_GetEnd(PyObject*, Py_ssize_t*)); 938PyAPI_FUNC_DECL(PyObject* PyUnicodeEncodeError_GetObject(PyObject*)); 939PyAPI_FUNC_DECL(PyObject* PyUnicodeEncodeError_GetReason(PyObject*)); 940PyAPI_FUNC_DECL(int PyUnicodeEncodeError_GetStart(PyObject*, Py_ssize_t*)); 941PyAPI_FUNC_DECL(int PyUnicodeEncodeError_SetEnd(PyObject*, Py_ssize_t)); 942PyAPI_FUNC_DECL(int PyUnicodeEncodeError_SetReason(PyObject*, const char*)); 943PyAPI_FUNC_DECL(int PyUnicodeEncodeError_SetStart(PyObject*, Py_ssize_t)); 944PyAPI_FUNC_DECL(int PyUnicodeTranslateError_GetEnd(PyObject*, Py_ssize_t*)); 945PyAPI_FUNC_DECL(PyObject* PyUnicodeTranslateError_GetObject(PyObject*)); 946PyAPI_FUNC_DECL(PyObject* PyUnicodeTranslateError_GetReason(PyObject*)); 947PyAPI_FUNC_DECL(int PyUnicodeTranslateError_GetStart(PyObject*, Py_ssize_t*)); 948PyAPI_FUNC_DECL(int PyUnicodeTranslateError_SetEnd(PyObject*, Py_ssize_t)); 949PyAPI_FUNC_DECL(int PyUnicodeTranslateError_SetReason(PyObject*, const char*)); 950PyAPI_FUNC_DECL(int PyUnicodeTranslateError_SetStart(PyObject*, Py_ssize_t)); 951PyAPI_FUNC_DECL(void PyUnicode_Append(PyObject**, PyObject*)); 952PyAPI_FUNC_DECL(void PyUnicode_AppendAndDel(PyObject**, PyObject*)); 953PyAPI_FUNC_DECL(PyObject* PyUnicode_AsASCIIString(PyObject*)); 954PyAPI_FUNC_DECL(PyObject* PyUnicode_AsCharmapString(PyObject*, PyObject*)); 955PyAPI_FUNC_DECL(PyObject* PyUnicode_AsDecodedObject(PyObject*, const char*, 956 const char*)); 957PyAPI_FUNC_DECL(PyObject* PyUnicode_AsDecodedUnicode(PyObject*, const char*, 958 const char*)); 959PyAPI_FUNC_DECL(PyObject* PyUnicode_AsEncodedObject(PyObject*, const char*, 960 const char*)); 961PyAPI_FUNC_DECL(PyObject* PyUnicode_AsEncodedString(PyObject*, const char*, 962 const char*)); 963PyAPI_FUNC_DECL(PyObject* PyUnicode_AsEncodedUnicode(PyObject*, const char*, 964 const char*)); 965PyAPI_FUNC_DECL(PyObject* PyUnicode_AsLatin1String(PyObject*)); 966PyAPI_FUNC_DECL(PyObject* PyUnicode_AsMBCSString(PyObject*)); 967PyAPI_FUNC_DECL(PyObject* PyUnicode_AsRawUnicodeEscapeString(PyObject*)); 968PyAPI_FUNC_DECL(Py_UCS4* PyUnicode_AsUCS4(PyObject*, Py_UCS4*, Py_ssize_t, 969 int)); 970PyAPI_FUNC_DECL(Py_UCS4* PyUnicode_AsUCS4Copy(PyObject*)); 971PyAPI_FUNC_DECL(PyObject* PyUnicode_AsUTF16String(PyObject*)); 972PyAPI_FUNC_DECL(PyObject* PyUnicode_AsUTF32String(PyObject*)); 973PyAPI_FUNC_DECL(const char* PyUnicode_AsUTF8(PyObject*)); 974PyAPI_FUNC_DECL(const char* PyUnicode_AsUTF8AndSize(PyObject*, Py_ssize_t*)); 975PyAPI_FUNC_DECL(PyObject* PyUnicode_AsUTF8String(PyObject*)); 976PyAPI_FUNC_DECL(Py_UNICODE* PyUnicode_AsUnicode(PyObject*)); 977PyAPI_FUNC_DECL(Py_UNICODE* PyUnicode_AsUnicodeAndSize(PyObject*, Py_ssize_t*)); 978PyAPI_FUNC_DECL(PyObject* PyUnicode_AsUnicodeEscapeString(PyObject*)); 979PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_AsWideChar(PyObject*, wchar_t*, 980 Py_ssize_t)); 981PyAPI_FUNC_DECL(wchar_t* PyUnicode_AsWideCharString(PyObject*, Py_ssize_t*)); 982PyAPI_FUNC_DECL(PyObject* PyUnicode_BuildEncodingMap(PyObject*)); 983PyAPI_FUNC_DECL(int PyUnicode_Compare(PyObject*, PyObject*)); 984PyAPI_FUNC_DECL(int PyUnicode_CompareWithASCIIString(PyObject*, const char*)); 985PyAPI_FUNC_DECL(PyObject* PyUnicode_Concat(PyObject*, PyObject*)); 986PyAPI_FUNC_DECL(int PyUnicode_Contains(PyObject*, PyObject*)); 987PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_Count(PyObject*, PyObject*, Py_ssize_t, 988 Py_ssize_t)); 989PyAPI_FUNC_DECL(PyObject* PyUnicode_Decode(const char*, Py_ssize_t, const char*, 990 const char*)); 991PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeASCII(const char*, Py_ssize_t, 992 const char*)); 993PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeCharmap(const char*, Py_ssize_t, 994 PyObject*, const char*)); 995PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeCodePageStateful( 996 int, const char*, Py_ssize_t, const char*, Py_ssize_t*)); 997PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeFSDefault(const char*)); 998PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeFSDefaultAndSize(const char*, 999 Py_ssize_t)); 1000PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeLatin1(const char*, Py_ssize_t, 1001 const char*)); 1002PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeLocale(const char*, const char*)); 1003PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeLocaleAndSize(const char*, Py_ssize_t, 1004 const char*)); 1005PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeMBCS(const char*, Py_ssize_t, 1006 const char*)); 1007PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeMBCSStateful(const char*, Py_ssize_t, 1008 const char*, 1009 Py_ssize_t*)); 1010PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeRawUnicodeEscape(const char*, 1011 Py_ssize_t, 1012 const char*)); 1013PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF16(const char*, Py_ssize_t, 1014 const char*, int*)); 1015PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF16Stateful(const char*, Py_ssize_t, 1016 const char*, int*, 1017 Py_ssize_t*)); 1018PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF32(const char*, Py_ssize_t, 1019 const char*, int*)); 1020PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF32Stateful(const char*, Py_ssize_t, 1021 const char*, int*, 1022 Py_ssize_t*)); 1023PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF7(const char*, Py_ssize_t, 1024 const char*)); 1025PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF7Stateful(const char*, Py_ssize_t, 1026 const char*, 1027 Py_ssize_t*)); 1028PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF8(const char*, Py_ssize_t, 1029 const char*)); 1030PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUTF8Stateful(const char*, Py_ssize_t, 1031 const char*, 1032 Py_ssize_t*)); 1033PyAPI_FUNC_DECL(PyObject* PyUnicode_DecodeUnicodeEscape(const char*, Py_ssize_t, 1034 const char*)); 1035PyAPI_FUNC_DECL(PyObject* PyUnicode_EncodeCodePage(int, PyObject*, 1036 const char*)); 1037PyAPI_FUNC_DECL(PyObject* PyUnicode_EncodeFSDefault(PyObject*)); 1038PyAPI_FUNC_DECL(PyObject* PyUnicode_EncodeLocale(PyObject*, const char*)); 1039PyAPI_FUNC_DECL(PyObject* PyUnicode_EncodeUTF16(const Py_UNICODE*, Py_ssize_t, 1040 const char*, int)); 1041PyAPI_FUNC_DECL(PyObject* PyUnicode_EncodeUTF32(const Py_UNICODE*, Py_ssize_t, 1042 const char*, int)); 1043PyAPI_FUNC_DECL(int PyUnicode_FSConverter(PyObject*, void*)); 1044PyAPI_FUNC_DECL(int PyUnicode_FSDecoder(PyObject*, void*)); 1045PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_Find(PyObject*, PyObject*, Py_ssize_t, 1046 Py_ssize_t, int)); 1047PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_FindChar(PyObject*, Py_UCS4, Py_ssize_t, 1048 Py_ssize_t, int)); 1049PyAPI_FUNC_DECL(PyObject* PyUnicode_Format(PyObject*, PyObject*)); 1050PyAPI_FUNC_DECL(PyObject* PyUnicode_FromEncodedObject(PyObject*, const char*, 1051 const char*)); 1052PyAPI_FUNC_DECL(PyObject* PyUnicode_FromFormat(const char*, ...)); 1053PyAPI_FUNC_DECL(PyObject* PyUnicode_FromFormatV(const char*, va_list)); 1054PyAPI_FUNC_DECL(PyObject* PyUnicode_FromKindAndData(int, const void*, 1055 Py_ssize_t)); 1056PyAPI_FUNC_DECL(PyObject* PyUnicode_FromObject(PyObject*)); 1057PyAPI_FUNC_DECL(PyObject* PyUnicode_FromOrdinal(int)); 1058PyAPI_FUNC_DECL(PyObject* PyUnicode_FromString(const char*)); 1059PyAPI_FUNC_DECL(PyObject* PyUnicode_FromStringAndSize(const char*, Py_ssize_t)); 1060PyAPI_FUNC_DECL(PyObject* PyUnicode_FromUnicode(const Py_UNICODE*, Py_ssize_t)); 1061PyAPI_FUNC_DECL(PyObject* PyUnicode_FromWideChar(const wchar_t*, Py_ssize_t)); 1062PyAPI_FUNC_DECL(const char* PyUnicode_GetDefaultEncoding(void)); 1063PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_GetLength(PyObject*)); 1064PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_GetSize(PyObject*)); 1065PyAPI_FUNC_DECL(PyObject* PyUnicode_InternFromString(const char*)); 1066PyAPI_FUNC_DECL(void PyUnicode_InternImmortal(PyObject**)); 1067PyAPI_FUNC_DECL(void PyUnicode_InternInPlace(PyObject**)); 1068PyAPI_FUNC_DECL(int PyUnicode_IsIdentifier(PyObject*)); 1069PyAPI_FUNC_DECL(PyObject* PyUnicode_Join(PyObject*, PyObject*)); 1070PyAPI_FUNC_DECL(PyObject* PyUnicode_New(Py_ssize_t, Py_UCS4)); 1071PyAPI_FUNC_DECL(PyObject* PyUnicode_Partition(PyObject*, PyObject*)); 1072PyAPI_FUNC_DECL(PyObject* PyUnicode_RPartition(PyObject*, PyObject*)); 1073PyAPI_FUNC_DECL(PyObject* PyUnicode_RSplit(PyObject*, PyObject*, Py_ssize_t)); 1074PyAPI_FUNC_DECL(Py_UCS4 PyUnicode_ReadChar(PyObject*, Py_ssize_t)); 1075PyAPI_FUNC_DECL(PyObject* PyUnicode_Replace(PyObject*, PyObject*, PyObject*, 1076 Py_ssize_t)); 1077PyAPI_FUNC_DECL(int PyUnicode_Resize(PyObject**, Py_ssize_t)); 1078PyAPI_FUNC_DECL(PyObject* PyUnicode_RichCompare(PyObject*, PyObject*, int)); 1079PyAPI_FUNC_DECL(PyObject* PyUnicode_Split(PyObject*, PyObject*, Py_ssize_t)); 1080PyAPI_FUNC_DECL(PyObject* PyUnicode_Splitlines(PyObject*, int)); 1081PyAPI_FUNC_DECL(PyObject* PyUnicode_Substring(PyObject*, Py_ssize_t, 1082 Py_ssize_t)); 1083PyAPI_FUNC_DECL(Py_ssize_t PyUnicode_Tailmatch(PyObject*, PyObject*, Py_ssize_t, 1084 Py_ssize_t, int)); 1085PyAPI_FUNC_DECL(PyObject* PyUnicode_Translate(PyObject*, PyObject*, 1086 const char*)); 1087PyAPI_FUNC_DECL(int PyUnicode_WriteChar(PyObject*, Py_ssize_t, Py_UCS4)); 1088PyAPI_FUNC_DECL(PyObject* PyWeakref_GetObject(PyObject*)); 1089PyAPI_FUNC_DECL(PyObject* PyWeakref_NewProxy(PyObject*, PyObject*)); 1090PyAPI_FUNC_DECL(PyObject* PyWeakref_NewRef(PyObject*, PyObject*)); 1091PyAPI_FUNC_DECL(PyObject* PyWrapper_New(PyObject*, PyObject*)); 1092PyAPI_FUNC_DECL(int Py_AddPendingCall(int (*)(void*), void*)); 1093PyAPI_FUNC_DECL(int Py_AtExit(void (*)(void))); 1094PyAPI_FUNC_DECL(PyObject* Py_BuildValue(const char*, ...)); 1095PyAPI_FUNC_DECL(int Py_BytesMain(int, char**)); 1096PyAPI_FUNC_DECL(PyObject* Py_CompileString(const char*, const char*, int)); 1097PyAPI_FUNC_DECL(void Py_DecRef(PyObject*)); 1098PyAPI_FUNC_DECL(wchar_t* Py_DecodeLocale(const char*, size_t*)); 1099PyAPI_FUNC_DECL(char* Py_EncodeLocale(const wchar_t*, size_t*)); 1100PyAPI_FUNC_DECL(void Py_EndInterpreter(PyThreadState*)); 1101PyAPI_FUNC_DECL(void Py_Exit(int)); 1102PyAPI_FUNC_DECL(void Py_FatalError(const char*)) _Py_NO_RETURN; 1103PyAPI_FUNC_DECL(void Py_Finalize(void)); 1104PyAPI_FUNC_DECL(int Py_FdIsInteractive(FILE*, const char*)); 1105PyAPI_FUNC_DECL(int Py_FinalizeEx(void)); 1106PyAPI_FUNC_DECL(const char* Py_GetBuildInfo(void)); 1107PyAPI_FUNC_DECL(const char* Py_GetCompiler(void)); 1108PyAPI_FUNC_DECL(const char* Py_GetCopyright(void)); 1109PyAPI_FUNC_DECL(wchar_t* Py_GetExecPrefix(void)); 1110PyAPI_FUNC_DECL(wchar_t* Py_GetPath(void)); 1111PyAPI_FUNC_DECL(const char* Py_GetPlatform(void)); 1112PyAPI_FUNC_DECL(wchar_t* Py_GetPrefix(void)); 1113PyAPI_FUNC_DECL(wchar_t* Py_GetProgramFullPath(void)); 1114PyAPI_FUNC_DECL(wchar_t* Py_GetProgramName(void)); 1115PyAPI_FUNC_DECL(wchar_t* Py_GetPythonHome(void)); 1116PyAPI_FUNC_DECL(int Py_GetRecursionLimit(void)); 1117PyAPI_FUNC_DECL(const char* Py_GetVersion(void)); 1118PyAPI_FUNC_DECL(int Py_ISALNUM_Func(unsigned char)); 1119PyAPI_FUNC_DECL(int Py_ISALPHA_Func(unsigned char)); 1120PyAPI_FUNC_DECL(int Py_ISDIGIT_Func(unsigned char)); 1121PyAPI_FUNC_DECL(int Py_ISLOWER_Func(unsigned char)); 1122PyAPI_FUNC_DECL(int Py_ISSPACE_Func(unsigned char)); 1123PyAPI_FUNC_DECL(int Py_ISUPPER_Func(unsigned char)); 1124PyAPI_FUNC_DECL(int Py_ISXDIGIT_Func(unsigned char)); 1125PyAPI_FUNC_DECL(unsigned char Py_TOLOWER_Func(unsigned char)); 1126PyAPI_FUNC_DECL(unsigned char Py_TOUPPER_Func(unsigned char)); 1127PyAPI_FUNC_DECL(void Py_IncRef(PyObject*)); 1128PyAPI_FUNC_DECL(void Py_Initialize(void)); 1129PyAPI_FUNC_DECL(void Py_InitializeEx(int)); 1130PyAPI_FUNC_DECL(int Py_IsInitialized(void)); 1131PyAPI_FUNC_DECL(int Py_Main(int, wchar_t**)); 1132PyAPI_FUNC_DECL(int Py_MakePendingCalls(void)); 1133PyAPI_FUNC_DECL(PyThreadState* Py_NewInterpreter(void)); 1134PyAPI_FUNC_DECL(int Py_ReprEnter(PyObject*)); 1135PyAPI_FUNC_DECL(void Py_ReprLeave(PyObject*)); 1136PyAPI_FUNC_DECL(void Py_SetPath(const wchar_t*)); 1137PyAPI_FUNC_DECL(void Py_SetProgramName(const wchar_t*)); 1138PyAPI_FUNC_DECL(void Py_SetPythonHome(const wchar_t*)); 1139PyAPI_FUNC_DECL(void Py_SetRecursionLimit(int)); 1140PyAPI_FUNC_DECL(struct symtable* Py_SymtableString(const char*, const char*, 1141 int)); 1142PyAPI_FUNC_DECL(struct symtable* Py_SymtableStringObject(const char* str, 1143 PyObject* filename, 1144 int start)); 1145PyAPI_FUNC_DECL(size_t Py_UNICODE_strlen(const Py_UNICODE*)); 1146PyAPI_FUNC_DECL(char* Py_UniversalNewlineFgets(char*, int, FILE*, PyObject*)); 1147PyAPI_FUNC_DECL(PyObject* Py_VaBuildValue(const char*, va_list)); 1148PyAPI_FUNC_DECL(void _PyArg_BadArgument(const char*, const char*, const char*, 1149 PyObject*)); 1150PyAPI_FUNC_DECL(int _PyArg_CheckPositional(const char*, Py_ssize_t, Py_ssize_t, 1151 Py_ssize_t)); 1152PyAPI_FUNC_DECL(void _PyArg_Fini(void)); 1153PyAPI_FUNC_DECL(int _PyArg_NoKeywords(const char* funcname, PyObject* kw)); 1154PyAPI_FUNC_DECL(int _PyArg_NoPositional(const char* funcname, PyObject* args)); 1155PyAPI_FUNC_DECL(int _PyArg_ParseStack(PyObject* const* args, Py_ssize_t nargs, 1156 const char* format, ...)); 1157PyAPI_FUNC_DECL(int _PyArg_ParseStack_SizeT(PyObject* const* args, 1158 Py_ssize_t nargs, 1159 const char* format, ...)); 1160PyAPI_FUNC_DECL(int _PyArg_ParseStackAndKeywords(PyObject* const*, Py_ssize_t, 1161 PyObject*, 1162 struct _PyArg_Parser*, ...)); 1163PyAPI_FUNC_DECL(int _PyArg_ParseStackAndKeywords_SizeT( 1164 PyObject* const*, Py_ssize_t, PyObject*, struct _PyArg_Parser*, ...)); 1165PyAPI_FUNC_DECL(int _PyArg_ParseTupleAndKeywordsFast(PyObject*, PyObject*, 1166 struct _PyArg_Parser*, 1167 ...)); 1168PyAPI_FUNC_DECL(int _PyArg_ParseTupleAndKeywordsFast_SizeT( 1169 PyObject*, PyObject*, struct _PyArg_Parser*, ...)); 1170PyAPI_FUNC_DECL(int _PyArg_ParseTupleAndKeywords_SizeT(PyObject*, PyObject*, 1171 const char*, char**, 1172 ...)); 1173PyAPI_FUNC_DECL(int _PyArg_ParseTuple_SizeT(PyObject* args, const char* format, 1174 ...)); 1175PyAPI_FUNC_DECL(int _PyArg_Parse_SizeT(PyObject*, const char*, ...)); 1176PyAPI_FUNC_DECL(PyObject* const* _PyArg_UnpackKeywords( 1177 PyObject* const*, Py_ssize_t, PyObject*, PyObject*, struct _PyArg_Parser*, 1178 int, int, int, PyObject**)); 1179PyAPI_FUNC_DECL(int _PyArg_UnpackStack(PyObject* const*, Py_ssize_t, 1180 const char*, Py_ssize_t, Py_ssize_t, 1181 ...)); 1182PyAPI_FUNC_DECL(int _PyArg_VaParseTupleAndKeywordsFast(PyObject*, PyObject*, 1183 struct _PyArg_Parser*, 1184 va_list)); 1185PyAPI_FUNC_DECL(int _PyArg_VaParseTupleAndKeywordsFast_SizeT( 1186 PyObject*, PyObject*, struct _PyArg_Parser*, va_list)); 1187PyAPI_FUNC_DECL(int _PyArg_VaParseTupleAndKeywords_SizeT(PyObject*, PyObject*, 1188 const char*, char**, 1189 va_list)); 1190PyAPI_FUNC_DECL(int _PyArg_VaParse_SizeT(PyObject*, const char*, va_list)); 1191PyAPI_FUNC_DECL(void* _PyBytesWriter_Alloc(_PyBytesWriter* writer, 1192 Py_ssize_t size)); 1193PyAPI_FUNC_DECL(void _PyBytesWriter_Dealloc(_PyBytesWriter* writer)); 1194PyAPI_FUNC_DECL(PyObject* _PyBytesWriter_Finish(_PyBytesWriter* writer, 1195 void* str)); 1196PyAPI_FUNC_DECL(void _PyBytesWriter_Init(_PyBytesWriter* writer)); 1197PyAPI_FUNC_DECL(void* _PyBytesWriter_Prepare(_PyBytesWriter* writer, void* str, 1198 Py_ssize_t growth)); 1199PyAPI_FUNC_DECL(void* _PyBytesWriter_Resize(_PyBytesWriter* writer, void* str, 1200 Py_ssize_t new_size)); 1201PyAPI_FUNC_DECL(void* _PyBytesWriter_WriteBytes(_PyBytesWriter* writer, 1202 void* str, const void* bytes, 1203 Py_ssize_t len)); 1204PyAPI_FUNC_DECL(PyObject* _PyBytes_DecodeEscape(const char*, Py_ssize_t, 1205 const char*, Py_ssize_t, 1206 const char*, const char**)); 1207PyAPI_FUNC_DECL(PyObject* _PyBytes_Join(PyObject*, PyObject*)); 1208PyAPI_FUNC_DECL(int _PyBytes_Resize(PyObject**, Py_ssize_t)); 1209PyAPI_FUNC_DECL(PyObject* _PyCodecInfo_GetIncrementalDecoder(PyObject*, 1210 const char*)); 1211PyAPI_FUNC_DECL(PyObject* _PyCodecInfo_GetIncrementalEncoder(PyObject*, 1212 const char*)); 1213PyAPI_FUNC_DECL(PyObject* _PyCodec_LookupTextEncoding(const char*, 1214 const char*)); 1215PyAPI_FUNC_DECL(PyObject* _PyDict_GetItem_KnownHash(PyObject* pydict, 1216 PyObject* key, 1217 Py_hash_t hash)); 1218PyAPI_FUNC_DECL(int _PyDict_Next(PyObject*, Py_ssize_t*, PyObject**, PyObject**, 1219 Py_hash_t*)); 1220PyAPI_FUNC_DECL(int _PyDict_SetItem_KnownHash(PyObject* pydict, PyObject* key, 1221 PyObject* value, Py_hash_t hash)); 1222PyAPI_FUNC_DECL(void _PyErr_BadInternalCall(const char*, int)); 1223PyAPI_FUNC_DECL(void _PyErr_ChainExceptions(PyObject*, PyObject*, PyObject*)); 1224PyAPI_FUNC_DECL(PyObject* _PyErr_FormatFromCause(PyObject*, const char*, ...)); 1225PyAPI_FUNC_DECL(PyObject* _PyEval_EvalFrameDefault(PyFrameObject*, int)); 1226PyAPI_FUNC_DECL(void _PyEval_ReInitThreads(_PyRuntimeState*)); 1227PyAPI_FUNC_DECL(int _PyFloat_Pack2(double x, unsigned char* p, int le)); 1228PyAPI_FUNC_DECL(int _PyFloat_Pack4(double x, unsigned char* p, int le)); 1229PyAPI_FUNC_DECL(int _PyFloat_Pack8(double x, unsigned char* p, int le)); 1230PyAPI_FUNC_DECL(double _PyFloat_Unpack2(const unsigned char* p, int le)); 1231PyAPI_FUNC_DECL(double _PyFloat_Unpack4(const unsigned char* p, int le)); 1232PyAPI_FUNC_DECL(double _PyFloat_Unpack8(const unsigned char* p, int le)); 1233PyAPI_FUNC_DECL(void _PyGILState_Reinit(_PyRuntimeState*)); 1234PyAPI_FUNC_DECL(void _PyImport_AcquireLock(void)); 1235PyAPI_FUNC_DECL(void _PyImport_ReInitLock(void)); 1236PyAPI_FUNC_DECL(int _PyImport_ReleaseLock(void)); 1237PyAPI_FUNC_DECL(void _PyInterpreterState_DeleteExceptMain(_PyRuntimeState*)); 1238PyAPI_FUNC_DECL(PyInterpreterState* _PyInterpreterState_Get(void)); 1239PyAPI_FUNC_DECL(int _PyLong_AsByteArray(PyLongObject*, unsigned char*, size_t, 1240 int, int)); 1241PyAPI_FUNC_DECL(int _PyLong_AsInt(PyObject*)); 1242PyAPI_FUNC_DECL(time_t _PyLong_AsTime_t(PyObject*)); 1243PyAPI_FUNC_DECL(PyObject* _PyLong_Copy(PyLongObject*)); 1244PyAPI_FUNC_DECL(PyObject* _PyLong_DivmodNear(PyObject*, PyObject*)); 1245PyAPI_FUNC_DECL(double _PyLong_Frexp(PyLongObject*, Py_ssize_t*)); 1246PyAPI_FUNC_DECL(PyObject* _PyLong_FromByteArray(const unsigned char*, size_t, 1247 int, int)); 1248PyAPI_FUNC_DECL(PyLongObject* _PyLong_FromNbInt(PyObject*)); 1249PyAPI_FUNC_DECL(PyObject* _PyLong_FromTime_t(time_t)); 1250PyAPI_FUNC_DECL(PyObject* _PyLong_GCD(PyObject*, PyObject*)); 1251PyAPI_FUNC_DECL(PyObject* _PyLong_Lshift(PyObject*, size_t)); 1252PyAPI_FUNC_DECL(size_t _PyLong_NumBits(PyObject*)); 1253PyAPI_FUNC_DECL(PyObject* _PyLong_Rshift(PyObject*, size_t)); 1254PyAPI_FUNC_DECL(int _PyLong_Sign(PyObject*)); 1255PyAPI_FUNC_DECL(int _PyLong_Size_t_Converter(PyObject*, void*)); 1256PyAPI_FUNC_DECL(int _PyLong_UnsignedInt_Converter(PyObject*, void*)); 1257PyAPI_FUNC_DECL(int _PyLong_UnsignedLong_Converter(PyObject*, void*)); 1258PyAPI_FUNC_DECL(int _PyLong_UnsignedLongLong_Converter(PyObject*, void*)); 1259PyAPI_FUNC_DECL(int _PyLong_UnsignedShort_Converter(PyObject*, void*)); 1260PyAPI_FUNC_DECL(char* _PyMem_RawStrdup(const char*)); 1261PyAPI_FUNC_DECL(char* _PyMem_Strdup(const char*)); 1262PyAPI_FUNC_DECL(PyObject* _PyNamespace_New(PyObject* kwds)); 1263PyAPI_FUNC_DECL(int _PyOS_InterruptOccurred(PyThreadState*)); 1264PyAPI_FUNC_DECL(int _PyOS_URandom(void*, Py_ssize_t)); 1265PyAPI_FUNC_DECL(int _PyOS_URandomNonblock(void*, Py_ssize_t)); 1266PyAPI_FUNC_DECL(PyObject* _PyObject_CallMethod_SizeT(PyObject*, const char*, 1267 const char*, ...)); 1268PyAPI_FUNC_DECL(PyObject* _PyObject_CallNoArg(PyObject*)); 1269PyAPI_FUNC_DECL(PyObject* _PyObject_FastCall(PyObject*, PyObject**, 1270 Py_ssize_t)); 1271PyAPI_FUNC_DECL(PyObject* _PyObject_FastCallDict(PyObject*, PyObject**, 1272 Py_ssize_t, PyObject*)); 1273PyAPI_FUNC_DECL(PyObject* _PyObject_FastCallKeywords(PyObject*, PyObject**, 1274 Py_ssize_t, PyObject*)); 1275PyAPI_FUNC_DECL(PyObject* _PyObject_GC_Calloc(size_t)); 1276PyAPI_FUNC_DECL(PyObject* _PyObject_GC_Malloc(size_t)); 1277PyAPI_FUNC_DECL(PyObject* _PyObject_GC_New(PyTypeObject*)); 1278PyAPI_FUNC_DECL(PyVarObject* _PyObject_GC_NewVar(PyTypeObject*, Py_ssize_t)); 1279PyAPI_FUNC_DECL(PyVarObject* _PyObject_GC_Resize(PyVarObject*, Py_ssize_t)); 1280PyAPI_FUNC_DECL(PyObject* _PyObject_GetAttrId(PyObject*, 1281 struct _Py_Identifier*)); 1282PyAPI_FUNC_DECL(int _PyObject_HasAttrId(PyObject*, struct _Py_Identifier*)); 1283PyAPI_FUNC_DECL(int _PyObject_LookupAttr(PyObject*, PyObject*, PyObject**)); 1284PyAPI_FUNC_DECL(PyObject* _PyObject_LookupSpecial(PyObject*, 1285 struct _Py_Identifier*)); 1286PyAPI_FUNC_DECL(PyObject* _PyObject_New(PyTypeObject*)); 1287PyAPI_FUNC_DECL(PyVarObject* _PyObject_NewVar(PyTypeObject*, Py_ssize_t)); 1288PyAPI_FUNC_DECL(int _PyObject_SetAttrId(PyObject*, struct _Py_Identifier*, 1289 PyObject*)); 1290PyAPI_FUNC_DECL(void _PyRuntimeState_ReInitThreads(_PyRuntimeState*)); 1291PyAPI_FUNC_DECL(char* const* _PySequence_BytesToCharpArray(PyObject*)); 1292PyAPI_FUNC_DECL(int _PySet_NextEntry(PyObject* pyset, Py_ssize_t* ppos, 1293 PyObject** pkey, Py_hash_t* phash)); 1294PyAPI_FUNC_DECL(void _PySignal_AfterFork(void)); 1295PyAPI_FUNC_DECL(int _PyState_AddModule(PyObject*, struct PyModuleDef*)); 1296PyAPI_FUNC_DECL(void _PyState_ClearModules(void)); 1297PyAPI_FUNC_DECL(size_t _PySys_GetSizeOf(PyObject*)); 1298PyAPI_FUNC_DECL(PyThreadState* _PyThreadState_GET_Func(void)); 1299PyAPI_FUNC_DECL(int _PyThreadState_GetRecursionDepth(PyThreadState*)); 1300PyAPI_FUNC_DECL(void _PyThreadState_Init(_PyRuntimeState*, PyThreadState*)); 1301PyAPI_FUNC_DECL(PyThreadState* _PyThreadState_Prealloc(PyInterpreterState*)); 1302PyAPI_FUNC_DECL(_PyTime_t _PyTime_AsMicroseconds(_PyTime_t, _PyTime_round_t)); 1303PyAPI_FUNC_DECL(_PyTime_t _PyTime_AsMilliseconds(_PyTime_t, _PyTime_round_t)); 1304PyAPI_FUNC_DECL(PyObject* _PyTime_AsNanosecondsObject(_PyTime_t)); 1305PyAPI_FUNC_DECL(double _PyTime_AsSecondsDouble(_PyTime_t)); 1306PyAPI_FUNC_DECL(int _PyTime_AsTimespec(_PyTime_t, struct timespec*)); 1307PyAPI_FUNC_DECL(int _PyTime_AsTimeval(_PyTime_t, struct timeval*, 1308 _PyTime_round_t)); 1309PyAPI_FUNC_DECL(int _PyTime_AsTimevalTime_t(_PyTime_t, time_t*, int*, 1310 _PyTime_round_t)); 1311PyAPI_FUNC_DECL(int _PyTime_AsTimeval_noraise(_PyTime_t, struct timeval*, 1312 _PyTime_round_t)); 1313PyAPI_FUNC_DECL(int _PyTime_FromMillisecondsObject(_PyTime_t*, PyObject*, 1314 _PyTime_round_t)); 1315PyAPI_FUNC_DECL(_PyTime_t _PyTime_FromNanoseconds(_PyTime_t ns)); 1316PyAPI_FUNC_DECL(int _PyTime_FromNanosecondsObject(_PyTime_t* t, PyObject* obj)); 1317PyAPI_FUNC_DECL(_PyTime_t _PyTime_FromSeconds(int seconds)); 1318PyAPI_FUNC_DECL(int _PyTime_FromSecondsObject(_PyTime_t*, PyObject*, 1319 _PyTime_round_t)); 1320PyAPI_FUNC_DECL(int _PyTime_FromTimespec(_PyTime_t* tp, struct timespec* ts)); 1321PyAPI_FUNC_DECL(int _PyTime_FromTimeval(_PyTime_t* tp, struct timeval* tv)); 1322PyAPI_FUNC_DECL(_PyTime_t _PyTime_GetMonotonicClock(void)); 1323PyAPI_FUNC_DECL(int _PyTime_GetMonotonicClockWithInfo(_PyTime_t*, 1324 _Py_clock_info_t*)); 1325PyAPI_FUNC_DECL(_PyTime_t _PyTime_GetPerfCounter(void)); 1326PyAPI_FUNC_DECL(int _PyTime_GetPerfCounterWithInfo(_PyTime_t* t, 1327 _Py_clock_info_t* info)); 1328PyAPI_FUNC_DECL(_PyTime_t _PyTime_GetSystemClock(void)); 1329PyAPI_FUNC_DECL(int _PyTime_GetSystemClockWithInfo(_PyTime_t*, 1330 _Py_clock_info_t*)); 1331PyAPI_FUNC_DECL(int _PyTime_Init(void)); 1332PyAPI_FUNC_DECL(_PyTime_t _PyTime_MulDiv(_PyTime_t ticks, _PyTime_t mul, 1333 _PyTime_t div)); 1334PyAPI_FUNC_DECL(int _PyTime_ObjectToTime_t(PyObject*, time_t*, 1335 _PyTime_round_t)); 1336PyAPI_FUNC_DECL(int _PyTime_ObjectToTimespec(PyObject*, time_t*, long*, 1337 _PyTime_round_t)); 1338PyAPI_FUNC_DECL(int _PyTime_ObjectToTimeval(PyObject*, time_t*, long*, 1339 _PyTime_round_t)); 1340PyAPI_FUNC_DECL(int _PyTime_gmtime(time_t, struct tm*)); 1341PyAPI_FUNC_DECL(int _PyTime_localtime(time_t, struct tm*)); 1342PyAPI_FUNC_DECL(void _PyTraceback_Add(const char*, const char*, int)); 1343PyAPI_FUNC_DECL(void _PyTrash_deposit_object(PyObject*)); 1344PyAPI_FUNC_DECL(void _PyTrash_destroy_chain(void)); 1345PyAPI_FUNC_DECL(void _PyTrash_thread_deposit_object(PyObject*)); 1346PyAPI_FUNC_DECL(void _PyTrash_thread_destroy_chain(void)); 1347PyAPI_FUNC_DECL(PyObject* _PyType_Lookup(PyTypeObject*, PyObject*)); 1348PyAPI_FUNC_DECL(const char* _PyType_Name(PyTypeObject*)); 1349PyAPI_FUNC_DECL(void _PyUnicodeWriter_Dealloc(_PyUnicodeWriter*)); 1350PyAPI_FUNC_DECL(PyObject* _PyUnicodeWriter_Finish(_PyUnicodeWriter*)); 1351PyAPI_FUNC_DECL(void _PyUnicodeWriter_Init(_PyUnicodeWriter*)); 1352PyAPI_FUNC_DECL(int _PyUnicodeWriter_Prepare(_PyUnicodeWriter*, Py_ssize_t, 1353 Py_UCS4)); 1354PyAPI_FUNC_DECL(int _PyUnicodeWriter_WriteASCIIString(_PyUnicodeWriter*, 1355 const char*, Py_ssize_t)); 1356PyAPI_FUNC_DECL(int _PyUnicodeWriter_WriteChar(_PyUnicodeWriter*, Py_UCS4)); 1357PyAPI_FUNC_DECL(int _PyUnicodeWriter_WriteCharInline(_PyUnicodeWriter*, 1358 Py_UCS4)); 1359PyAPI_FUNC_DECL(int _PyUnicodeWriter_WriteLatin1String(_PyUnicodeWriter*, 1360 const char*, 1361 Py_ssize_t)); 1362PyAPI_FUNC_DECL(int _PyUnicodeWriter_WriteStr(_PyUnicodeWriter*, PyObject*)); 1363PyAPI_FUNC_DECL(int _PyUnicodeWriter_WriteSubstring(_PyUnicodeWriter*, 1364 PyObject*, Py_ssize_t, 1365 Py_ssize_t)); 1366PyAPI_FUNC_DECL(PyObject* _PyUnicode_AsASCIIString(PyObject*, const char*)); 1367PyAPI_FUNC_DECL(PyObject* _PyUnicode_AsLatin1String(PyObject*, const char*)); 1368PyAPI_FUNC_DECL(PyObject* _PyUnicode_AsUTF8String(PyObject*, const char*)); 1369PyAPI_FUNC_DECL(PyObject* _PyUnicode_DecodeUnicodeEscape( 1370 const char*, Py_ssize_t, const char*, const char**)); 1371PyAPI_FUNC_DECL(int _PyUnicode_EQ(PyObject*, PyObject*)); 1372PyAPI_FUNC_DECL(PyObject* _PyUnicode_EncodeUTF16(PyObject*, const char*, int)); 1373PyAPI_FUNC_DECL(PyObject* _PyUnicode_EncodeUTF32(PyObject*, const char*, int)); 1374PyAPI_FUNC_DECL(int _PyUnicode_EqualToASCIIString(PyObject*, const char*)); 1375PyAPI_FUNC_DECL(int _PyUnicode_IsAlpha(Py_UCS4)); 1376PyAPI_FUNC_DECL(int _PyUnicode_IsCaseIgnorable(Py_UCS4)); 1377PyAPI_FUNC_DECL(int _PyUnicode_IsCased(Py_UCS4)); 1378PyAPI_FUNC_DECL(int _PyUnicode_IsDecimalDigit(Py_UCS4)); 1379PyAPI_FUNC_DECL(int _PyUnicode_IsDigit(Py_UCS4)); 1380PyAPI_FUNC_DECL(int _PyUnicode_IsLinebreak(Py_UCS4)); 1381PyAPI_FUNC_DECL(int _PyUnicode_IsLowercase(Py_UCS4)); 1382PyAPI_FUNC_DECL(int _PyUnicode_IsNumeric(Py_UCS4)); 1383PyAPI_FUNC_DECL(int _PyUnicode_IsPrintable(Py_UCS4)); 1384PyAPI_FUNC_DECL(int _PyUnicode_IsTitlecase(Py_UCS4)); 1385PyAPI_FUNC_DECL(int _PyUnicode_IsUppercase(Py_UCS4)); 1386PyAPI_FUNC_DECL(int _PyUnicode_IsWhitespace(Py_UCS4)); 1387PyAPI_FUNC_DECL(int _PyUnicode_IsXidContinue(Py_UCS4)); 1388PyAPI_FUNC_DECL(int _PyUnicode_IsXidStart(Py_UCS4)); 1389PyAPI_FUNC_DECL(int _PyUnicode_Ready(PyObject*)); 1390PyAPI_FUNC_DECL(int _PyUnicode_ToDecimalDigit(Py_UCS4)); 1391PyAPI_FUNC_DECL(int _PyUnicode_ToDigit(Py_UCS4)); 1392PyAPI_FUNC_DECL(int _PyUnicode_ToFoldedFull(Py_UCS4, Py_UCS4*)); 1393PyAPI_FUNC_DECL(int _PyUnicode_ToLowerFull(Py_UCS4, Py_UCS4*)); 1394PyAPI_FUNC_DECL(Py_UCS4 _PyUnicode_ToLowercase(Py_UCS4)); 1395PyAPI_FUNC_DECL(double _PyUnicode_ToNumeric(Py_UCS4)); 1396PyAPI_FUNC_DECL(int _PyUnicode_ToTitleFull(Py_UCS4, Py_UCS4*)); 1397PyAPI_FUNC_DECL(Py_UCS4 _PyUnicode_ToTitlecase(Py_UCS4)); 1398PyAPI_FUNC_DECL(int _PyUnicode_ToUpperFull(Py_UCS4, Py_UCS4*)); 1399PyAPI_FUNC_DECL(Py_UCS4 _PyUnicode_ToUppercase(Py_UCS4)); 1400PyAPI_FUNC_DECL(PyObject* _Py_BuildValue_SizeT(const char*, ...)); 1401PyAPI_FUNC_DECL(int _Py_CheckRecursiveCall(const char*)); 1402PyAPI_FUNC_DECL(void _Py_Dealloc(PyObject*)); 1403PyAPI_FUNC_DECL(int _Py_DecodeLocaleEx(const char*, wchar_t**, size_t*, 1404 const char**, int, _Py_error_handler)); 1405PyAPI_FUNC_DECL(int _Py_DecodeUTF8Ex(const char*, Py_ssize_t, wchar_t**, 1406 size_t*, const char**, _Py_error_handler)); 1407PyAPI_FUNC_DECL(wchar_t* _Py_DecodeUTF8_surrogateescape(const char*, Py_ssize_t, 1408 size_t*)); 1409PyAPI_FUNC_DECL(int _Py_EncodeLocaleEx(const wchar_t*, char**, size_t*, 1410 const char**, int, _Py_error_handler)); 1411PyAPI_FUNC_DECL(int _Py_EncodeUTF8Ex(const wchar_t*, char**, size_t*, 1412 const char**, int, _Py_error_handler)); 1413PyAPI_FUNC_DECL(void _Py_FreeCharPArray(char* const array[])); 1414PyAPI_FUNC_DECL(int _Py_GetLocaleconvNumeric(struct lconv*, PyObject**, 1415 PyObject**)); 1416PyAPI_FUNC_DECL(Py_hash_t _Py_HashBytes(const void*, Py_ssize_t)); 1417PyAPI_FUNC_DECL(Py_hash_t _Py_HashDouble(double)); 1418PyAPI_FUNC_DECL(Py_hash_t _Py_HashPointer(void*)); 1419PyAPI_FUNC_DECL(int _Py_IsFinalizing(void)); 1420PyAPI_FUNC_DECL(PyObject* _Py_Mangle(PyObject*, PyObject*)); 1421PyAPI_FUNC_DECL(void _Py_NewReference(PyObject*)); 1422PyAPI_FUNC_DECL(void _Py_PyAtExit(void (*func)(PyObject*), PyObject*)); 1423PyAPI_FUNC_DECL(void _Py_RestoreSignals(void)); 1424PyAPI_FUNC_DECL(char* _Py_SetLocaleFromEnv(int)); 1425PyAPI_FUNC_DECL(const char* _Py_SourceAsString(PyObject*, const char*, 1426 const char*, PyCompilerFlags*, 1427 PyObject**)); 1428PyAPI_FUNC_DECL(struct symtable* _Py_SymtableStringObjectFlags( 1429 const char*, PyObject*, int, PyCompilerFlags*)); 1430PyAPI_FUNC_DECL(PyObject* _Py_VaBuildValue_SizeT(const char*, va_list)); 1431PyAPI_FUNC_DECL(double _Py_c_abs(Py_complex)); 1432PyAPI_FUNC_DECL(Py_complex _Py_c_diff(Py_complex, Py_complex)); 1433PyAPI_FUNC_DECL(Py_complex _Py_c_neg(Py_complex)); 1434PyAPI_FUNC_DECL(Py_complex _Py_c_pow(Py_complex, Py_complex)); 1435PyAPI_FUNC_DECL(Py_complex _Py_c_prod(Py_complex, Py_complex)); 1436PyAPI_FUNC_DECL(Py_complex _Py_c_quot(Py_complex, Py_complex)); 1437PyAPI_FUNC_DECL(Py_complex _Py_c_sum(Py_complex, Py_complex)); 1438PyAPI_FUNC_DECL(PyObject* _Py_device_encoding(int)); 1439PyAPI_FUNC_DECL(char* _Py_dg_dtoa(double, int, int, int*, int*, char**)); 1440PyAPI_FUNC_DECL(void _Py_dg_freedtoa(char*)); 1441PyAPI_FUNC_DECL(double _Py_dg_infinity(int sign)); 1442PyAPI_FUNC_DECL(double _Py_dg_stdnan(int sign)); 1443PyAPI_FUNC_DECL(double _Py_dg_strtod(const char*, char**)); 1444PyAPI_FUNC_DECL(int _Py_dup(int)); 1445PyAPI_FUNC_DECL(FILE* _Py_fopen(const char*, const char*)); 1446PyAPI_FUNC_DECL(FILE* _Py_fopen_obj(PyObject*, const char*)); 1447PyAPI_FUNC_DECL(int _Py_fstat(int, struct _Py_stat_struct*)); 1448PyAPI_FUNC_DECL(int _Py_fstat_noraise(int, struct _Py_stat_struct*)); 1449PyAPI_FUNC_DECL(int _Py_get_blocking(int)); 1450PyAPI_FUNC_DECL(int _Py_get_inheritable(int)); 1451PyAPI_FUNC_DECL(int _Py_normalize_encoding(const char*, char*, size_t)); 1452PyAPI_FUNC_DECL(int _Py_open(const char*, int)); 1453PyAPI_FUNC_DECL(int _Py_open_noraise(const char*, int)); 1454PyAPI_FUNC_DECL(double _Py_parse_inf_or_nan(const char*, char**)); 1455PyAPI_FUNC_DECL(Py_ssize_t _Py_read(int, void*, size_t)); 1456PyAPI_FUNC_DECL(int _Py_set_blocking(int, int)); 1457PyAPI_FUNC_DECL(int _Py_set_inheritable(int, int, int*)); 1458PyAPI_FUNC_DECL(int _Py_set_inheritable_async_safe(int, int, int*)); 1459PyAPI_FUNC_DECL(int _Py_stat(PyObject*, struct stat*)); 1460PyAPI_FUNC_DECL(PyObject* _Py_string_to_number_with_underscores( 1461 const char*, Py_ssize_t, const char*, PyObject*, void*, 1462 PyObject* (*)(const char*, Py_ssize_t, void*))); 1463PyAPI_FUNC_DECL(FILE* _Py_wfopen(const wchar_t*, const wchar_t*)); 1464PyAPI_FUNC_DECL(wchar_t* _Py_wgetcwd(wchar_t*, size_t)); 1465PyAPI_FUNC_DECL(int _Py_wreadlink(const wchar_t*, wchar_t*, size_t)); 1466PyAPI_FUNC_DECL(wchar_t* _Py_wrealpath(const wchar_t*, wchar_t*, size_t)); 1467PyAPI_FUNC_DECL(Py_ssize_t _Py_write(int, const void*, size_t)); 1468PyAPI_FUNC_DECL(Py_ssize_t _Py_write_noraise(int, const void*, size_t)); 1469 1470/* Macros */ 1471 1472#ifdef PY_SSIZE_T_CLEAN 1473#define PyArg_Parse _PyArg_Parse_SizeT 1474#define PyArg_ParseTuple _PyArg_ParseTuple_SizeT 1475#define PyArg_ParseTupleAndKeywords _PyArg_ParseTupleAndKeywords_SizeT 1476#define PyArg_VaParse _PyArg_VaParse_SizeT 1477#define PyArg_VaParseTupleAndKeywords _PyArg_VaParseTupleAndKeywords_SizeT 1478#define Py_BuildValue _Py_BuildValue_SizeT 1479#define Py_VaBuildValue _Py_VaBuildValue_SizeT 1480#define _PyArg_ParseStack _PyArg_ParseStack_SizeT 1481#define _PyArg_ParseStackAndKeywords _PyArg_ParseStackAndKeywords_SizeT 1482#define _PyArg_ParseTupleAndKeywordsFast _PyArg_ParseTupleAndKeywordsFast_SizeT 1483#define _PyArg_VaParseTupleAndKeywordsFast \ 1484 _PyArg_VaParseTupleAndKeywordsFast_SizeT 1485#endif 1486 1487/* Parentheses around the whole expressions are needed to compile 1488 * "if PyDict_CheckExact(other) {". Parentheses around "op" are needed for 1489 * "PyBytes_Check(state = PyTuple_GET_ITEM(args, 0))" */ 1490#define PyAnySet_Check(op) (PyAnySet_Check_Func((PyObject*)(op))) 1491#define PyAnySet_CheckExact(op) (PyAnySet_CheckExact_Func((PyObject*)(op))) 1492#define PyBool_Check(op) (PyBool_Check_Func((PyObject*)(op))) 1493#define PyByteArray_Check(op) (PyByteArray_Check_Func((PyObject*)(op))) 1494#define PyByteArray_CheckExact(op) \ 1495 (PyByteArray_CheckExact_Func((PyObject*)(op))) 1496#define PyBytes_Check(op) (PyBytes_Check_Func((PyObject*)(op))) 1497#define PyBytes_CheckExact(op) (PyBytes_CheckExact_Func((PyObject*)(op))) 1498#define PyCapsule_CheckExact(op) (PyCapsule_CheckExact_Func((PyObject*)(op))) 1499#define PyCFunction_Check(op) (PyCFunction_Check_Func((PyObject*)(op))) 1500#define PyCode_Check(op) (PyCode_Check_Func((PyObject*)(op))) 1501#define PyCode_GetNumFree(op) PyCode_GetNumFree_Func((PyObject*)op) 1502#define PyComplex_Check(op) (PyComplex_Check_Func((PyObject*)(op))) 1503#define PyComplex_CheckExact(op) (PyComplex_CheckExact_Func((PyObject*)(op))) 1504#define PyDict_Check(op) (PyDict_Check_Func((PyObject*)(op))) 1505#define PyDict_CheckExact(op) (PyDict_CheckExact_Func((PyObject*)(op))) 1506#define PyFloat_Check(op) (PyFloat_Check_Func((PyObject*)(op))) 1507#define PyFloat_CheckExact(op) (PyFloat_CheckExact_Func((PyObject*)(op))) 1508#define PyFrozenSet_Check(op) (PyFrozenSet_Check_Func((PyObject*)(op))) 1509#define PyFrozenSet_CheckExact(op) \ 1510 (PyFrozenSet_CheckExact_Func((PyObject*)(op))) 1511#define PyIndex_Check(op) (PyIndex_Check_Func((PyObject*)(op))) 1512#define PyIter_Check(op) (PyIter_Check_Func((PyObject*)(op))) 1513#define PyList_Check(op) (PyList_Check_Func((PyObject*)(op))) 1514#define PyList_CheckExact(op) (PyList_CheckExact_Func((PyObject*)(op))) 1515#define PyLong_Check(op) (PyLong_Check_Func((PyObject*)(op))) 1516#define PyLong_CheckExact(op) (PyLong_CheckExact_Func((PyObject*)(op))) 1517#define PyMemoryView_Check(op) (PyMemoryView_Check_Func((PyObject*)(op))) 1518#define PyMethod_Check(op) (PyMethod_Check_Func((PyObject*)(op))) 1519#define PyModule_Check(op) (PyModule_Check_Func((PyObject*)(op))) 1520#define PyModule_CheckExact(op) (PyModule_CheckExact_Func((PyObject*)(op))) 1521#define PyObject_CheckBuffer(op) (PyObject_CheckBuffer_Func((PyObject*)(op))) 1522#define PyObject_TypeCheck(op, tp) \ 1523 (PyObject_TypeCheck_Func((PyObject*)(op), (PyTypeObject*)(tp))) 1524#define PySet_Check(op) (PySet_Check_Func((PyObject*)(op))) 1525#define PySlice_Check(op) (PySlice_Check_Func((PyObject*)(op))) 1526#define PyTraceBack_Check(op) (PyTraceBack_Check_Func((PyObject*)(op))) 1527#define PyTuple_Check(op) (PyTuple_Check_Func((PyObject*)(op))) 1528#define PyTuple_CheckExact(op) (PyTuple_CheckExact_Func((PyObject*)(op))) 1529#define PyType_Check(op) (PyType_Check_Func((PyObject*)(op))) 1530#define PyType_CheckExact(op) (PyType_CheckExact_Func((PyObject*)(op))) 1531#define PyUnicode_Check(op) (PyUnicode_Check_Func((PyObject*)(op))) 1532#define PyUnicode_CheckExact(op) (PyUnicode_CheckExact_Func((PyObject*)(op))) 1533#define PyWeakref_Check(op) (PyWeakref_Check_Func((PyObject*)(op))) 1534 1535#define PyFPE_START_PROTECT(err_string, leave_stmt) 1536#define PyFPE_END_PROTECT(v) 1537 1538#define _Py_BEGIN_SUPPRESS_IPH 1539#define _Py_END_SUPPRESS_IPH 1540 1541#define _Py_SET_53BIT_PRECISION_HEADER 1542#define _Py_SET_53BIT_PRECISION_START 1543#define _Py_SET_53BIT_PRECISION_END 1544 1545#define PyModule_AddIntMacro(m, c) PyModule_AddIntConstant(m, #c, c) 1546#define PyModule_Create(module) PyModule_Create2(module, PYTHON_API_VERSION) 1547 1548#define PyByteArray_AS_STRING(op) PyByteArray_AsString((PyObject*)op) 1549#define PyByteArray_GET_SIZE(op) PyByteArray_Size((PyObject*)op) 1550#define PyBytes_AS_STRING(op) PyBytes_AsString((PyObject*)op) 1551#define PyBytes_GET_SIZE(op) PyBytes_Size((PyObject*)op) 1552 1553#define PyCFunction_GET_SELF(op) PyCFunction_GET_SELF_Func((PyObject*)op) 1554 1555#define PyDescr_NAME(op) PyDescr_NAME_Func((PyObject*)op) 1556 1557#define PyDict_GET_SIZE(op) PyDict_GET_SIZE_Func((PyObject*)op) 1558 1559#define PyEval_CallObject(func, arg) \ 1560 PyEval_CallObjectWithKeywords(func, arg, (PyObject*)NULL) 1561 1562#define PyFloat_AS_DOUBLE(op) PyFloat_AsDouble((PyObject*)op) 1563 1564#define PyInstanceMethod_GET_FUNCTION(op) \ 1565 (PyInstanceMethod_GET_FUNCTION_Func((PyObject*)op)) 1566 1567#define PyList_GET_ITEM(op, i) PyList_GetItem((PyObject*)op, i) 1568#define PyList_GET_SIZE(op) PyList_Size((PyObject*)op) 1569#define PyList_SET_ITEM(op, i, v) PyList_SET_ITEM_Func((PyObject*)op, i, v) 1570 1571#define PyLong_AS_LONG(op) PyLong_AsLong(op) 1572 1573#define PyMethod_GET_FUNCTION(op) (PyMethod_GET_FUNCTION_Func((PyObject*)op)) 1574#define PyMethod_GET_SELF(op) (PyMethod_GET_SELF_Func((PyObject*)op)) 1575 1576#define PySequence_Fast_GET_SIZE(op) \ 1577 PySequence_Fast_GET_SIZE_Func((PyObject*)op) 1578#define PySequence_Fast_GET_ITEM(op, i) \ 1579 PySequence_Fast_GET_ITEM_Func((PyObject*)op, i) 1580#define PySequence_ITEM(op, i) PySequence_ITEM_Func((PyObject*)op, i) 1581 1582#define PySet_GET_SIZE(op) PySet_Size((PyObject*)op) 1583 1584#define PyTuple_GET_ITEM(op, i) PyTuple_GET_ITEM_Func((PyObject*)op, i) 1585#define PyTuple_GET_SIZE(op) PyTuple_GET_SIZE_Func((PyObject*)op) 1586#define PyTuple_SET_ITEM(op, i, v) PyTuple_SET_ITEM_Func((PyObject*)op, i, v) 1587 1588#define PyType_HasFeature(t, f) ((PyType_GetFlags(t) & (f)) != 0) 1589#define PyType_IS_GC(t) PyType_HasFeature((t), Py_TPFLAGS_HAVE_GC) 1590 1591#define PyStructSequence_GET_ITEM(op, i) \ 1592 PyStructSequence_GetItem((PyObject*)op, i) 1593#define PyStructSequence_SET_ITEM(op, i, v) \ 1594 PyStructSequence_SET_ITEM_Func((PyObject*)op, i, v) 1595 1596#define PyUnicode_GET_LENGTH(op) PyUnicode_GET_LENGTH_Func((PyObject*)op) 1597#define PyUnicode_GET_SIZE(op) PyUnicode_GetSize((PyObject*)op) 1598#define PyUnicode_IS_READY(op) 1 1599#define PyUnicode_KIND(op) PyUnicode_KIND_Func((PyObject*)op) 1600#define PyUnicode_DATA(op) PyUnicode_DATA_Func((PyObject*)op) 1601#define PyUnicode_1BYTE_DATA(op) ((Py_UCS1*)PyUnicode_DATA(op)) 1602#define PyUnicode_2BYTE_DATA(op) ((Py_UCS2*)PyUnicode_DATA(op)) 1603#define PyUnicode_4BYTE_DATA(op) ((Py_UCS4*)PyUnicode_DATA(op)) 1604#define PyUnicode_READ(kind, data, index) \ 1605 PyUnicode_READ_Func(kind, (void*)data, index) 1606#define PyUnicode_READ_CHAR(op, index) \ 1607 PyUnicode_READ_CHAR_Func((PyObject*)op, index) 1608#define PyUnicode_READY(op) 0 1609#define PyUnicode_WRITE(kind, data, index, value) \ 1610 PyUnicode_WRITE_Func(kind, data, index, value) 1611#define PyUnicode_IS_ASCII(op) PyUnicode_IS_ASCII_Func((PyObject*)op) 1612#define PyUnicode_IS_COMPACT_ASCII(op) PyUnicode_IS_ASCII_Func((PyObject*)op) 1613 1614#define PyWeakref_GET_OBJECT(ref) \ 1615 PyWeakref_GET_OBJECT_Func((PyWeakReference*)ref) 1616 1617#define Py_MIN(x, y) (((x) > (y)) ? (y) : (x)) 1618#define Py_MAX(x, y) (((x) > (y)) ? (x) : (y)) 1619#define Py_ABS(x) ((x) < 0 ? -(x) : (x)) 1620 1621#define Py_BUILD_ASSERT_EXPR(cond) (sizeof(char[1 - 2 * !(cond)]) - 1) 1622#define Py_BUILD_ASSERT(cond) \ 1623 do { \ 1624 (void)Py_BUILD_ASSERT_EXPR(cond); \ 1625 } while (0) 1626 1627#define _PyThreadState_GET() _PyThreadState_GET_Func() 1628 1629#define _Py_SIZE_ROUND_DOWN(n, a) ((size_t)(n) & ~(size_t)((a)-1)) 1630#define _Py_SIZE_ROUND_UP(n, a) \ 1631 (((size_t)(n) + (size_t)((a)-1)) & ~(size_t)((a)-1)) 1632#define _Py_ALIGN_DOWN(p, a) ((void*)((uintptr_t)(p) & ~(uintptr_t)((a)-1))) 1633#define _Py_ALIGN_UP(p, a) \ 1634 ((void*)(((uintptr_t)(p) + (uintptr_t)((a)-1)) & ~(uintptr_t)((a)-1))) 1635#define _Py_IS_ALIGNED(p, a) (!((uintptr_t)(p) & (uintptr_t)((a)-1))) 1636 1637#define Py_CLEAR(op) \ 1638 do { \ 1639 PyObject* _py_tmp = (PyObject*)(op); \ 1640 if (_py_tmp != NULL) { \ 1641 (op) = NULL; \ 1642 Py_DECREF_Func(_py_tmp); \ 1643 } \ 1644 } while (0) 1645#define Py_DECREF(op) Py_DECREF_Func((PyObject*)op) 1646#define Py_INCREF(op) Py_INCREF_Func((PyObject*)op) 1647#define Py_REFCNT(op) Py_REFCNT_Func((PyObject*)op) 1648#define Py_SET_REFCNT(op, refcnt) Py_SET_REFCNT_Func((PyObject*)op, (refcnt)) 1649#define Py_XDECREF(op) Py_DecRef((PyObject*)op) 1650#define Py_XINCREF(op) Py_IncRef((PyObject*)op) 1651#define Py_SETREF(op, op2) \ 1652 do { \ 1653 PyObject* _py_tmp = (PyObject*)(op); \ 1654 (op) = (op2); \ 1655 Py_DECREF(_py_tmp); \ 1656 } while (0) 1657#define Py_XSETREF(op, op2) \ 1658 do { \ 1659 PyObject* _py_tmp = (PyObject*)(op); \ 1660 (op) = (op2); \ 1661 Py_XDECREF(_py_tmp); \ 1662 } while (0) 1663 1664#define PyObject_MALLOC PyObject_Malloc 1665#define PyObject_REALLOC PyObject_Realloc 1666#define PyObject_FREE PyObject_Free 1667#define PyObject_Del PyObject_Free 1668#define PyObject_DEL PyObject_Free 1669#define _PyObject_SIZE(typeobj) _PyObject_SIZE_Func((PyObject*)typeobj) 1670#define _PyObject_VAR_SIZE(typeobj, nitems) \ 1671 _PyObject_VAR_SIZE_Func((PyObject*)typeobj, nitems) 1672#define PyObject_INIT(op, typeobj) \ 1673 PyObject_Init((PyObject*)op, (PyTypeObject*)typeobj) 1674#define PyObject_INIT_VAR(op, typeobj, size) \ 1675 PyObject_InitVar((PyVarObject*)op, (PyTypeObject*)typeobj, size) 1676#define PyObject_New(type, typeobj) \ 1677 ((type*)_PyObject_New((PyTypeObject*)typeobj)) 1678#define PyObject_NEW(type, typeobj) PyObject_New(type, typeobj) 1679#define PyObject_NewVar(type, typeobj, n) \ 1680 ((type*)_PyObject_NewVar((PyTypeObject*)typeobj, n)) 1681#define PyObject_NEW_VAR(type, typeobj, n) PyObject_NewVar(type, typeobj, n) 1682#define Py_SIZE(obj) (*Py_SIZE_Func((PyVarObject*)(obj))) 1683#define Py_TYPE(obj) Py_TYPE_Func((PyObject*)(obj)) 1684#define Py_SET_TYPE(obj, type) Py_SET_TYPE_Func((PyObject*)(obj), type) 1685#define PyExceptionClass_Check(obj) \ 1686 PyExceptionClass_Check_Func((PyObject*)(obj)) 1687#define PyExceptionInstance_Class(obj) \ 1688 ((PyObject*)Py_TYPE_Func((PyObject*)(obj))) 1689#define PyExceptionInstance_Check(x) PyExceptionInstance_Check_Func(x) 1690 1691#define PyObject_GC_New(type, typeobj) ((type*)_PyObject_GC_New(typeobj)) 1692#define PyObject_GC_NewVar(type, typeobj, n) \ 1693 ((type*)_PyObject_GC_NewVar((typeobj), (n))) 1694#define Py_VISIT(op) \ 1695 do { \ 1696 if (op) { \ 1697 int vret = visit((PyObject*)(op), arg); \ 1698 if (vret) return vret; \ 1699 } \ 1700 } while (0) 1701 1702/* Memory macros from pymem.h */ 1703#define PyMem_DEL(p) PyMem_Del(p) 1704#define PyMem_FREE(p) PyMem_Free(p) 1705#define PyMem_MALLOC(n) PyMem_Malloc(n) 1706#define PyMem_New(type, n) ((type*)PyMem_New_Func(sizeof(type), n)) 1707#define PyMem_NEW(type, n) PyMem_New(type, n) 1708#define PyMem_REALLOC(p, n) PyMem_Realloc(p, n) 1709#define PyMem_Resize(p, type, n) \ 1710 ((p) = ((size_t)(n) > PY_SSIZE_T_MAX / sizeof(type)) \ 1711 ? NULL \ 1712 : (type*)PyMem_Realloc((p), (n) * sizeof(type))) 1713#define PyMem_RESIZE(p, type, n) PyMem_Resize(p, type, n) 1714 1715/* Character macros from pyctype.h */ 1716#define Py_CHARMASK(c) ((unsigned char)((c)&0xff)) 1717#define Py_ISALNUM(c) (Py_ISALNUM_Func(Py_CHARMASK(c))) 1718#define Py_ISALPHA(c) (Py_ISALPHA_Func(Py_CHARMASK(c))) 1719#define Py_ISDIGIT(c) (Py_ISDIGIT_Func(Py_CHARMASK(c))) 1720#define Py_ISLOWER(c) (Py_ISLOWER_Func(Py_CHARMASK(c))) 1721#define Py_ISSPACE(c) (Py_ISSPACE_Func(Py_CHARMASK(c))) 1722#define Py_ISUPPER(c) (Py_ISUPPER_Func(Py_CHARMASK(c))) 1723#define Py_ISXDIGIT(c) (Py_ISXDIGIT_Func(Py_CHARMASK(c))) 1724#define Py_TOLOWER(c) (Py_TOLOWER_Func(Py_CHARMASK(c))) 1725#define Py_TOUPPER(c) (Py_TOUPPER_Func(Py_CHARMASK(c))) 1726 1727#define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) (NARROW)(VALUE) 1728 1729#define Py_EnterRecursiveCall(where) Py_EnterRecursiveCall_Func(where) 1730#define Py_LeaveRecursiveCall() Py_LeaveRecursiveCall_Func() 1731 1732#define _PyIsSelectable_fd(FD) ((unsigned int)(FD) < (unsigned int)FD_SETSIZE) 1733 1734#define _PYTIME_FROMSECONDS(seconds) _PyTime_FromSeconds(seconds) 1735 1736#define Py_UNICODE_ISALNUM(ch) \ 1737 (Py_UNICODE_ISALPHA(ch) || Py_UNICODE_ISDECIMAL(ch) || \ 1738 Py_UNICODE_ISDIGIT(ch) || Py_UNICODE_ISNUMERIC(ch)) 1739#define Py_UNICODE_ISALPHA(ch) Py_UNICODE_ISALPHA_Func(ch) 1740#define Py_UNICODE_ISDECIMAL(ch) Py_UNICODE_ISDECIMAL_Func(ch) 1741#define Py_UNICODE_ISDIGIT(ch) Py_UNICODE_ISDIGIT_Func(ch) 1742#define Py_UNICODE_ISLINEBREAK(ch) Py_UNICODE_ISLINEBREAK_Func(ch) 1743#define Py_UNICODE_ISLOWER(ch) Py_UNICODE_ISLOWER_Func(ch) 1744#define Py_UNICODE_ISNUMERIC(ch) Py_UNICODE_ISNUMERIC_Func(ch) 1745#define Py_UNICODE_ISPRINTABLE(ch) Py_UNICODE_ISPRINTABLE_Func(ch) 1746#define Py_UNICODE_ISSPACE(ch) Py_UNICODE_ISSPACE_Func(ch) 1747#define Py_UNICODE_ISTITLE(ch) Py_UNICODE_ISTITLE_Func(ch) 1748#define Py_UNICODE_ISUPPER(ch) Py_UNICODE_ISUPPER_Func(ch) 1749#define Py_UNICODE_IS_HIGH_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDBFF) 1750#define Py_UNICODE_IS_LOW_SURROGATE(ch) (0xDC00 <= (ch) && (ch) <= 0xDFFF) 1751#define Py_UNICODE_IS_SURROGATE(ch) (0xD800 <= (ch) && (ch) <= 0xDFFF) 1752#define Py_UNICODE_TODECIMAL(ch) Py_UNICODE_TODECIMAL_Func(ch) 1753#define Py_UNICODE_TODIGIT(ch) Py_UNICODE_TODIGIT_Func(ch) 1754#define Py_UNICODE_TOLOWER(ch) Py_UNICODE_TOLOWER_Func(ch) 1755#define Py_UNICODE_TONUMERIC(ch) Py_UNICODE_TONUMERIC_Func(ch) 1756#define Py_UNICODE_TOTITLE(ch) Py_UNICODE_TOTITLE_Func(ch) 1757#define Py_UNICODE_TOUPPER(ch) Py_UNICODE_TOUPPER_Func(ch) 1758#define Py_UNICODE_JOIN_SURROGATES(high, low) \ 1759 (((((Py_UCS4)(high)&0x03FF) << 10) | ((Py_UCS4)(low)&0x03FF)) + 0x10000) 1760#define Py_UNICODE_HIGH_SURROGATE(ch) (0xD800 - (0x10000 >> 10) + ((ch) >> 10)) 1761#define Py_UNICODE_LOW_SURROGATE(ch) (0xDC00 + ((ch)&0x3FF)) 1762 1763/* Define identity macro so `generate_cpython_sources.py` deletes the cpython 1764 * macro. TODO(T56488016): Remove this macro when the generator is gone. */ 1765#define _PyUnicodeWriter_Prepare(WRITER, LENGTH, MAXCHAR) \ 1766 _PyUnicodeWriter_Prepare(WRITER, LENGTH, MAXCHAR) 1767 1768#define Py_MEMCPY memcpy 1769#define Py_VA_COPY va_copy 1770#define Py_ARITHMETIC_RIGHT_SHIFT(TYPE, I, J) ((I) >> (J)) 1771#define Py_SAFE_DOWNCAST(VALUE, WIDE, NARROW) (NARROW)(VALUE) 1772 1773#define _Py_SET_EDOM_FOR_NAN(X) ; 1774 1775#define Py_SET_ERRNO_ON_MATH_ERROR(X) \ 1776 do { \ 1777 if (errno == 0) { \ 1778 if ((X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL) \ 1779 errno = ERANGE; \ 1780 else \ 1781 _Py_SET_EDOM_FOR_NAN(X) \ 1782 } \ 1783 } while (0) 1784 1785#define Py_SET_ERANGE_IF_OVERFLOW(X) Py_SET_ERRNO_ON_MATH_ERROR(X) 1786 1787#define Py_ADJUST_ERANGE1(X) \ 1788 do { \ 1789 if (errno == 0) { \ 1790 if ((X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL) errno = ERANGE; \ 1791 } else if (errno == ERANGE && (X) == 0.0) \ 1792 errno = 0; \ 1793 } while (0) 1794 1795#define Py_ADJUST_ERANGE2(X, Y) \ 1796 do { \ 1797 if ((X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL || (Y) == Py_HUGE_VAL || \ 1798 (Y) == -Py_HUGE_VAL) { \ 1799 if (errno == 0) errno = ERANGE; \ 1800 } else if (errno == ERANGE) \ 1801 errno = 0; \ 1802 } while (0) 1803 1804#define Py_FORCE_DOUBLE(X) (X) 1805#define Py_IS_NAN(X) isnan(X) 1806#define Py_IS_INFINITY(X) isinf(X) 1807#define Py_IS_FINITE(X) isfinite(X) 1808#define Py_OVERFLOWED(X) \ 1809 ((X) != 0.0 && (errno == ERANGE || (X) == Py_HUGE_VAL || (X) == -Py_HUGE_VAL)) 1810 1811#define _Py_IntegralTypeSigned(type) ((type)(-1) < 0) 1812#define _Py_IntegralTypeMax(type) \ 1813 ((_Py_IntegralTypeSigned(type)) \ 1814 ? (((((type)1 << (sizeof(type) * CHAR_BIT - 2)) - 1) << 1) + 1) \ 1815 : ~(type)0) 1816#define _Py_IntegralTypeMin(type) \ 1817 ((_Py_IntegralTypeSigned(type)) ? -_Py_IntegralTypeMax(type) - 1 : 0) 1818#define _Py_InIntegralTypeRange(type, v) \ 1819 (_Py_IntegralTypeMin(type) <= v && v <= _Py_IntegralTypeMax(type)) 1820 1821#define Py_RETURN_FALSE \ 1822 do { \ 1823 PyObject* return_value_ = Py_False; \ 1824 Py_INCREF(return_value_); \ 1825 return return_value_; \ 1826 } while (0) 1827#define Py_RETURN_INF(sign) \ 1828 return PyFloat_FromDouble(copysign(Py_HUGE_VAL, (sign))) 1829#define Py_RETURN_NAN return PyFloat_FromDouble(Py_NAN) 1830#define Py_RETURN_NONE \ 1831 do { \ 1832 PyObject* return_value_ = Py_None; \ 1833 Py_INCREF(return_value_); \ 1834 return return_value_; \ 1835 } while (0) 1836#define Py_RETURN_NOTIMPLEMENTED \ 1837 do { \ 1838 PyObject* return_value_ = Py_NotImplemented; \ 1839 Py_INCREF(return_value_); \ 1840 return return_value_; \ 1841 } while (0) 1842#define Py_RETURN_RICHCOMPARE(val1, val2, op) \ 1843 do { \ 1844 switch (op) { \ 1845 case Py_EQ: \ 1846 if ((val1) == (val2)) Py_RETURN_TRUE; \ 1847 Py_RETURN_FALSE; \ 1848 case Py_NE: \ 1849 if ((val1) != (val2)) Py_RETURN_TRUE; \ 1850 Py_RETURN_FALSE; \ 1851 case Py_LT: \ 1852 if ((val1) < (val2)) Py_RETURN_TRUE; \ 1853 Py_RETURN_FALSE; \ 1854 case Py_GT: \ 1855 if ((val1) > (val2)) Py_RETURN_TRUE; \ 1856 Py_RETURN_FALSE; \ 1857 case Py_LE: \ 1858 if ((val1) <= (val2)) Py_RETURN_TRUE; \ 1859 Py_RETURN_FALSE; \ 1860 case Py_GE: \ 1861 if ((val1) >= (val2)) Py_RETURN_TRUE; \ 1862 Py_RETURN_FALSE; \ 1863 default: \ 1864 Py_UNREACHABLE(); \ 1865 } \ 1866 } while (0) 1867#define Py_RETURN_TRUE \ 1868 do { \ 1869 PyObject* return_value_ = Py_True; \ 1870 Py_INCREF(return_value_); \ 1871 return return_value_; \ 1872 } while (0) 1873 1874#define Py_BEGIN_ALLOW_THREADS \ 1875 { \ 1876 PyThreadState* _save; \ 1877 _save = PyEval_SaveThread(); 1878#define Py_BLOCK_THREADS PyEval_RestoreThread(_save); 1879#define Py_UNBLOCK_THREADS _save = PyEval_SaveThread(); 1880#define Py_END_ALLOW_THREADS \ 1881 PyEval_RestoreThread(_save); \ 1882 } 1883 1884#ifdef __cplusplus 1885} 1886#endif 1887 1888#endif /* !CPYTHON_FUNC_H */