File indexing completed on 2025-11-19 09:50:48
0001 #ifndef Py_INTERNAL_INTRINSIC_H
0002 #define Py_INTERNAL_INTRINSIC_H
0003
0004 #ifndef Py_BUILD_CORE
0005 # error "this header requires Py_BUILD_CORE define"
0006 #endif
0007
0008
0009 #define INTRINSIC_1_INVALID 0
0010 #define INTRINSIC_PRINT 1
0011 #define INTRINSIC_IMPORT_STAR 2
0012 #define INTRINSIC_STOPITERATION_ERROR 3
0013 #define INTRINSIC_ASYNC_GEN_WRAP 4
0014 #define INTRINSIC_UNARY_POSITIVE 5
0015 #define INTRINSIC_LIST_TO_TUPLE 6
0016 #define INTRINSIC_TYPEVAR 7
0017 #define INTRINSIC_PARAMSPEC 8
0018 #define INTRINSIC_TYPEVARTUPLE 9
0019 #define INTRINSIC_SUBSCRIPT_GENERIC 10
0020 #define INTRINSIC_TYPEALIAS 11
0021
0022 #define MAX_INTRINSIC_1 11
0023
0024
0025
0026 #define INTRINSIC_2_INVALID 0
0027 #define INTRINSIC_PREP_RERAISE_STAR 1
0028 #define INTRINSIC_TYPEVAR_WITH_BOUND 2
0029 #define INTRINSIC_TYPEVAR_WITH_CONSTRAINTS 3
0030 #define INTRINSIC_SET_FUNCTION_TYPE_PARAMS 4
0031 #define INTRINSIC_SET_TYPEPARAM_DEFAULT 5
0032
0033 #define MAX_INTRINSIC_2 5
0034
0035 typedef PyObject *(*intrinsic_func1)(PyThreadState* tstate, PyObject *value);
0036 typedef PyObject *(*intrinsic_func2)(PyThreadState* tstate, PyObject *value1, PyObject *value2);
0037
0038 typedef struct {
0039 intrinsic_func1 func;
0040 const char *name;
0041 } intrinsic_func1_info;
0042
0043 typedef struct {
0044 intrinsic_func2 func;
0045 const char *name;
0046 } intrinsic_func2_info;
0047
0048 PyAPI_DATA(const intrinsic_func1_info) _PyIntrinsics_UnaryFunctions[];
0049 PyAPI_DATA(const intrinsic_func2_info) _PyIntrinsics_BinaryFunctions[];
0050
0051 #endif