| |
| |
| |
| |
| |
| |
| |
| from .. import __version__ |
|
|
| pyrex_prefix = "__pyx_" |
| cyversion = __version__.replace('.', '_') |
|
|
|
|
| codewriter_temp_prefix = pyrex_prefix + "t_" |
|
|
| temp_prefix = "__cyt_" |
|
|
| pyunicode_identifier_prefix = pyrex_prefix + 'U' |
|
|
| builtin_prefix = pyrex_prefix + "builtin_" |
| arg_prefix = pyrex_prefix + "arg_" |
| genexpr_arg_prefix = pyrex_prefix + "genexpr_arg_" |
| funcdoc_prefix = pyrex_prefix + "doc_" |
| enum_prefix = pyrex_prefix + "e_" |
| func_prefix = pyrex_prefix + "f_" |
| func_prefix_api = pyrex_prefix + "api_f_" |
| pyfunc_prefix = pyrex_prefix + "pf_" |
| pywrap_prefix = pyrex_prefix + "pw_" |
| genbody_prefix = pyrex_prefix + "gb_" |
| gstab_prefix = pyrex_prefix + "getsets_" |
| prop_get_prefix = pyrex_prefix + "getprop_" |
| const_prefix = pyrex_prefix + "k_" |
| py_const_prefix = pyrex_prefix + "kp_" |
| label_prefix = pyrex_prefix + "L" |
| pymethdef_prefix = pyrex_prefix + "mdef_" |
| method_wrapper_prefix = pyrex_prefix + "specialmethod_" |
| methtab_prefix = pyrex_prefix + "methods_" |
| memtab_prefix = pyrex_prefix + "members_" |
| objstruct_prefix = pyrex_prefix + "obj_" |
| typeptr_prefix = pyrex_prefix + "ptype_" |
| prop_set_prefix = pyrex_prefix + "setprop_" |
| type_prefix = pyrex_prefix + "t_" |
| typeobj_prefix = pyrex_prefix + "type_" |
| var_prefix = pyrex_prefix + "v_" |
| varptr_prefix = pyrex_prefix + "vp_" |
| varptr_prefix_api = pyrex_prefix + "api_vp_" |
| wrapperbase_prefix= pyrex_prefix + "wrapperbase_" |
| pybuffernd_prefix = pyrex_prefix + "pybuffernd_" |
| pybufferstruct_prefix = pyrex_prefix + "pybuffer_" |
| vtable_prefix = pyrex_prefix + "vtable_" |
| vtabptr_prefix = pyrex_prefix + "vtabptr_" |
| vtabstruct_prefix = pyrex_prefix + "vtabstruct_" |
| unicode_vtabentry_prefix = pyrex_prefix + "Uvtabentry_" |
| |
| |
| unicode_structmember_prefix = pyrex_prefix + "Umember_" |
| |
| |
| opt_arg_prefix = pyrex_prefix + "opt_args_" |
| convert_func_prefix = pyrex_prefix + "convert_" |
| closure_scope_prefix = pyrex_prefix + "scope_" |
| closure_class_prefix = pyrex_prefix + "scope_struct_" |
| lambda_func_prefix = pyrex_prefix + "lambda_" |
| module_is_main = pyrex_prefix + "module_is_main" |
| defaults_struct_prefix = pyrex_prefix + "defaults" |
| dynamic_args_cname = pyrex_prefix + "dynamic_args" |
|
|
| interned_prefixes = { |
| 'str': pyrex_prefix + "n_", |
| 'int': pyrex_prefix + "int_", |
| 'float': pyrex_prefix + "float_", |
| 'tuple': pyrex_prefix + "tuple_", |
| 'slice': pyrex_prefix + "slice_", |
| 'ustring': pyrex_prefix + "ustring_", |
| 'umethod': pyrex_prefix + "umethod_", |
| } |
|
|
| ctuple_type_prefix = pyrex_prefix + "ctuple_" |
| args_cname = pyrex_prefix + "args" |
| nargs_cname = pyrex_prefix + "nargs" |
| kwvalues_cname = pyrex_prefix + "kwvalues" |
| callargs_cname = pyrex_prefix + "callargs" |
| generator_cname = pyrex_prefix + "generator" |
| sent_value_cname = pyrex_prefix + "sent_value" |
| pykwdlist_cname = pyrex_prefix + "pyargnames" |
| obj_base_cname = pyrex_prefix + "base" |
| builtins_cname = pyrex_prefix + "b" |
| preimport_cname = pyrex_prefix + "i" |
| moddict_cname = pyrex_prefix + "d" |
| dummy_cname = pyrex_prefix + "dummy" |
| filename_cname = pyrex_prefix + "filename" |
| modulename_cname = pyrex_prefix + "modulename" |
| filetable_cname = pyrex_prefix + "f" |
| intern_tab_cname = pyrex_prefix + "intern_tab" |
| kwds_cname = pyrex_prefix + "kwds" |
| kwds_len_cname = pyrex_prefix + "kwds_len" |
| lineno_cname = pyrex_prefix + "lineno" |
| clineno_cname = pyrex_prefix + "clineno" |
| cfilenm_cname = pyrex_prefix + "cfilenm" |
| local_tstate_cname = pyrex_prefix + "tstate" |
| module_cname = pyrex_prefix + "m" |
| modulestatetype_cname = pyrex_prefix + "mstatetype" |
| modulestatevalue_cname = pyrex_prefix + "mstate" |
| modulestateglobal_cname = pyrex_prefix + "mstate_global" |
| moddoc_cname = pyrex_prefix + "mdoc" |
| methtable_cname = pyrex_prefix + "methods" |
| retval_cname = pyrex_prefix + "r" |
| reqd_kwds_cname = pyrex_prefix + "reqd_kwds" |
| self_cname = pyrex_prefix + "self" |
| stringtab_cname = pyrex_prefix + "string_tab" |
| codeobjtab_cname = pyrex_prefix + "codeobj_tab" |
| stringtab_encodings_cname = pyrex_prefix + "string_tab_encodings" |
| vtabslot_cname = pyrex_prefix + "vtab" |
| c_api_tab_cname = pyrex_prefix + "c_api_tab" |
| gilstate_cname = pyrex_prefix + "state" |
| skip_dispatch_cname = pyrex_prefix + "skip_dispatch" |
| empty_tuple = pyrex_prefix + "empty_tuple" |
| empty_bytes = pyrex_prefix + "empty_bytes" |
| empty_unicode = pyrex_prefix + "empty_unicode" |
| print_function = pyrex_prefix + "print" |
| print_function_kwargs = pyrex_prefix + "print_kwargs" |
| cleanup_cname = pyrex_prefix + "module_cleanup" |
| pymoduledef_cname = pyrex_prefix + "moduledef" |
| pymoduledef_slots_cname = pyrex_prefix + "moduledef_slots" |
| pymodinit_module_arg = pyrex_prefix + "pyinit_module" |
| pymodule_create_func_cname = pyrex_prefix + "pymod_create" |
| pymodule_exec_func_cname = pyrex_prefix + "pymod_exec" |
| optional_args_cname = pyrex_prefix + "optional_args" |
| import_star = pyrex_prefix + "import_star" |
| import_star_set = pyrex_prefix + "import_star_set" |
| outer_scope_cname= pyrex_prefix + "outer_scope" |
| cur_scope_cname = pyrex_prefix + "cur_scope" |
| enc_scope_cname = pyrex_prefix + "enc_scope" |
| frame_cname = pyrex_prefix + "frame" |
| frame_code_cname = pyrex_prefix + "frame_code" |
| monitoring_states_cname = pyrex_prefix + "pymonitoring_state" |
| monitoring_version_cname = pyrex_prefix + "pymonitoring_version" |
| error_without_exception_cname = pyrex_prefix + "error_without_exception" |
| binding_cfunc = pyrex_prefix + "binding_PyCFunctionType" |
| fused_func_prefix = pyrex_prefix + 'fuse_' |
| fused_dtype_prefix = pyrex_prefix + 'fused_dtype_' |
| quick_temp_cname = pyrex_prefix + "temp" |
| tp_dict_version_temp = pyrex_prefix + "tp_dict_version" |
| obj_dict_version_temp = pyrex_prefix + "obj_dict_version" |
| type_dict_guard_temp = pyrex_prefix + "typedict_guard" |
| cython_runtime_cname = pyrex_prefix + "cython_runtime" |
| cyfunction_type_cname = pyrex_prefix + "CyFunctionType" |
| fusedfunction_type_cname = pyrex_prefix + "FusedFunctionType" |
| |
| |
| |
| dataclass_field_default_cname = pyrex_prefix + "dataclass_dflt" |
|
|
| global_code_object_cache_find = pyrex_prefix + 'find_code_object' |
| global_code_object_cache_insert = pyrex_prefix + 'insert_code_object' |
|
|
| genexpr_id_ref = 'genexpr' |
| freelist_name = 'freelist' |
| freecount_name = 'freecount' |
|
|
| line_c_macro = "__LINE__" |
|
|
| file_c_macro = "__FILE__" |
|
|
| extern_c_macro = pyrex_prefix.upper() + "EXTERN_C" |
|
|
| exc_type_name = pyrex_prefix + "exc_type" |
| exc_value_name = pyrex_prefix + "exc_value" |
| exc_tb_name = pyrex_prefix + "exc_tb" |
| exc_lineno_name = pyrex_prefix + "exc_lineno" |
|
|
| parallel_freethreading_mutex = pyrex_prefix + "parallel_freethreading_mutex" |
| parallel_exc_type = pyrex_prefix + "parallel_exc_type" |
| parallel_exc_value = pyrex_prefix + "parallel_exc_value" |
| parallel_exc_tb = pyrex_prefix + "parallel_exc_tb" |
| parallel_filename = pyrex_prefix + "parallel_filename" |
| parallel_lineno = pyrex_prefix + "parallel_lineno" |
| parallel_clineno = pyrex_prefix + "parallel_clineno" |
| parallel_why = pyrex_prefix + "parallel_why" |
|
|
| |
| critical_section_variable = pyrex_prefix + "cs" |
|
|
| exc_vars = (exc_type_name, exc_value_name, exc_tb_name) |
|
|
| api_name = pyrex_prefix + "capi__" |
|
|
| |
| |
| |
| h_guard_prefix = "__PYX_HAVE_" |
| api_guard_prefix = "__PYX_HAVE_API_" |
| api_func_guard = "__PYX_HAVE_API_FUNC_" |
|
|
| PYX_NAN = "__PYX_NAN()" |
|
|
| def py_version_hex(major, minor=0, micro=0, release_level=0, release_serial=0): |
| return (major << 24) | (minor << 16) | (micro << 8) | (release_level << 4) | (release_serial) |
|
|
| |
| used_types_and_macros = [ |
| (cyfunction_type_cname, '__Pyx_CyFunction_USED'), |
| (fusedfunction_type_cname, '__Pyx_FusedFunction_USED'), |
| ('__pyx_GeneratorType', '__Pyx_Generator_USED'), |
| ('__pyx_IterableCoroutineType', '__Pyx_IterableCoroutine_USED'), |
| ('__pyx_CoroutineAwaitType', '__Pyx_Coroutine_USED'), |
| ('__pyx_CoroutineType', '__Pyx_Coroutine_USED'), |
| ] |
|
|
|
|
| iso_c23_keywords = frozenset(( |
| 'alignas', |
| 'alignof', |
| 'auto', |
| 'bool', |
| 'break', |
| 'case', |
| 'char', |
| 'const', |
| 'constexpr', |
| 'continue', |
| 'default', |
| 'do', |
| 'double', |
| 'else', |
| 'enum', |
| 'extern', |
| 'false', |
| 'float', |
| 'for', |
| 'goto', |
| 'if', |
| 'inline', |
| 'int', |
| 'long', |
| 'nullptr', |
| 'register', |
| 'restrict', |
| 'return', |
| 'short', |
| 'signed', |
| 'sizeof', |
| 'static', |
| 'static_assert', |
| 'struct', |
| 'switch', |
| 'thread_local', |
| 'true', |
| 'typedef', |
| 'typeof', |
| 'typeof_unqual', |
| 'union', |
| 'unsigned', |
| 'void', |
| 'volatile', |
| 'while', |
| '_Alignas', |
| '_Alignof', |
| '_Atomic', |
| '_BitInt', |
| '_Bool', |
| '_Complex', |
| '_Decimal128', |
| '_Decimal32', |
| '_Decimal64', |
| '_Generic', |
| '_Imaginary', |
| '_Noreturn', |
| '_Static_assert', |
| '_Thread_local', |
| )) |
|
|
|
|
| iso_cpp23_keywords = frozenset(( |
| 'alignas', |
| 'alignof', |
| 'and', |
| 'and_eq', |
| 'asm', |
| 'atomic_cancel', |
| 'atomic_commit', |
| 'atomic_noexcept', |
| 'auto', |
| 'bitand', |
| 'bitor', |
| 'bool', |
| 'break', |
| 'case', |
| 'catch', |
| 'char', |
| 'char8_t', |
| 'char16_t', |
| 'char32_t', |
| 'class', |
| 'compl', |
| 'concept', |
| 'const', |
| 'consteval', |
| 'constexpr', |
| 'constinit', |
| 'const_cast', |
| 'continue', |
| 'co_await', |
| 'co_return', |
| 'co_yield', |
| 'decltype', |
| 'default', |
| 'delete', |
| 'do', |
| 'double', |
| 'dynamic_cast', |
| 'else', |
| 'enum', |
| 'explicit', |
| 'export', |
| 'extern', |
| 'false', |
| 'float', |
| 'for', |
| 'friend', |
| 'goto', |
| 'if', |
| 'inline', |
| 'int', |
| 'long', |
| 'mutable', |
| 'namespace', |
| 'new', |
| 'noexcept', |
| 'not', |
| 'not_eq', |
| 'nullptr', |
| 'operator', |
| 'or', |
| 'or_eq', |
| 'private', |
| 'protected', |
| 'public', |
| 'reflexpr', |
| 'register', |
| 'reinterpret_cast', |
| 'requires', |
| 'return', |
| 'short', |
| 'signed', |
| 'sizeof', |
| 'static', |
| 'static_assert', |
| 'static_cast', |
| 'struct', |
| 'switch', |
| 'synchronized', |
| 'template', |
| 'this', |
| 'thread_local', |
| 'throw', |
| 'true', |
| 'try', |
| 'typedef', |
| 'typeid', |
| 'typename', |
| 'union', |
| 'unsigned', |
| 'using', |
| 'virtual', |
| 'void', |
| 'volatile', |
| 'wchar_t', |
| 'while', |
| 'xor', |
| 'xor_eq', |
| )) |
|
|
| reserved_cnames = iso_c23_keywords | iso_cpp23_keywords |
|
|