1 /* Module configuration */ 2 3 /* This file contains the table of built-in modules. 4 See create_builtin() in import.c. */ 5 6 #include "Python.h" 7 8 extern PyObject* PyInit__abc(void); 9 extern PyObject* PyInit_array(void); 10 extern PyObject* PyInit_audioop(void); 11 extern PyObject* PyInit_binascii(void); 12 extern PyObject* PyInit_cmath(void); 13 extern PyObject* PyInit_errno(void); 14 extern PyObject* PyInit_faulthandler(void); 15 extern PyObject* PyInit__tracemalloc(void); 16 extern PyObject* PyInit_gc(void); 17 extern PyObject* PyInit_math(void); 18 extern PyObject* PyInit__md5(void); 19 extern PyObject* PyInit_nt(void); 20 extern PyObject* PyInit__operator(void); 21 extern PyObject* PyInit__signal(void); 22 extern PyObject* PyInit__sha1(void); 23 extern PyObject* PyInit__sha256(void); 24 extern PyObject* PyInit__sha512(void); 25 extern PyObject* PyInit__sha3(void); 26 extern PyObject* PyInit__statistics(void); 27 extern PyObject* PyInit__typing(void); 28 extern PyObject* PyInit__blake2(void); 29 extern PyObject* PyInit_time(void); 30 extern PyObject* PyInit__thread(void); 31 #ifdef WIN32 32 extern PyObject* PyInit_msvcrt(void); 33 extern PyObject* PyInit__locale(void); 34 #endif 35 extern PyObject* PyInit__codecs(void); 36 extern PyObject* PyInit__weakref(void); 37 /* XXX: These two should really be extracted to standalone extensions. */ 38 extern PyObject* PyInit_xxsubtype(void); 39 extern PyObject* PyInit__xxsubinterpreters(void); 40 extern PyObject* PyInit__random(void); 41 extern PyObject* PyInit_itertools(void); 42 extern PyObject* PyInit__collections(void); 43 extern PyObject* PyInit__heapq(void); 44 extern PyObject* PyInit__bisect(void); 45 extern PyObject* PyInit__symtable(void); 46 extern PyObject* PyInit_mmap(void); 47 extern PyObject* PyInit__csv(void); 48 extern PyObject* PyInit__sre(void); 49 extern PyObject* PyInit_winreg(void); 50 extern PyObject* PyInit__struct(void); 51 extern PyObject* PyInit__datetime(void); 52 extern PyObject* PyInit__functools(void); 53 extern PyObject* PyInit__json(void); 54 #ifdef _Py_HAVE_ZLIB 55 extern PyObject* PyInit_zlib(void); 56 #endif 57 58 extern PyObject* PyInit__multibytecodec(void); 59 extern PyObject* PyInit__codecs_cn(void); 60 extern PyObject* PyInit__codecs_hk(void); 61 extern PyObject* PyInit__codecs_iso2022(void); 62 extern PyObject* PyInit__codecs_jp(void); 63 extern PyObject* PyInit__codecs_kr(void); 64 extern PyObject* PyInit__codecs_tw(void); 65 extern PyObject* PyInit__winapi(void); 66 extern PyObject* PyInit__lsprof(void); 67 extern PyObject* PyInit__ast(void); 68 extern PyObject* PyInit__io(void); 69 extern PyObject* PyInit__pickle(void); 70 extern PyObject* PyInit_atexit(void); 71 extern PyObject* _PyWarnings_Init(void); 72 extern PyObject* PyInit__string(void); 73 extern PyObject* PyInit__stat(void); 74 extern PyObject* PyInit__opcode(void); 75 extern PyObject* PyInit__contextvars(void); 76 extern PyObject* PyInit__tokenize(void); 77 78 /* tools/freeze/makeconfig.py marker for additional "extern" */ 79 /* -- ADDMODULE MARKER 1 -- */ 80 81 extern PyObject* PyMarshal_Init(void); 82 extern PyObject* PyInit__imp(void); 83 84 struct _inittab _PyImport_Inittab[] = { 85 {"_abc", PyInit__abc}, 86 {"array", PyInit_array}, 87 {"_ast", PyInit__ast}, 88 {"audioop", PyInit_audioop}, 89 {"binascii", PyInit_binascii}, 90 {"cmath", PyInit_cmath}, 91 {"errno", PyInit_errno}, 92 {"faulthandler", PyInit_faulthandler}, 93 {"gc", PyInit_gc}, 94 {"math", PyInit_math}, 95 {"nt", PyInit_nt}, /* Use the NT os functions, not posix */ 96 {"_operator", PyInit__operator}, 97 {"_signal", PyInit__signal}, 98 {"_md5", PyInit__md5}, 99 {"_sha1", PyInit__sha1}, 100 {"_sha256", PyInit__sha256}, 101 {"_sha512", PyInit__sha512}, 102 {"_sha3", PyInit__sha3}, 103 {"_blake2", PyInit__blake2}, 104 {"time", PyInit_time}, 105 {"_thread", PyInit__thread}, 106 {"_tokenize", PyInit__tokenize}, 107 {"_typing", PyInit__typing}, 108 {"_statistics", PyInit__statistics}, 109 #ifdef WIN32 110 {"msvcrt", PyInit_msvcrt}, 111 {"_locale", PyInit__locale}, 112 #endif 113 {"_tracemalloc", PyInit__tracemalloc}, 114 /* XXX Should _winapi go in a WIN32 block? not WIN64? */ 115 {"_winapi", PyInit__winapi}, 116 117 {"_codecs", PyInit__codecs}, 118 {"_weakref", PyInit__weakref}, 119 {"_random", PyInit__random}, 120 {"_bisect", PyInit__bisect}, 121 {"_heapq", PyInit__heapq}, 122 {"_lsprof", PyInit__lsprof}, 123 {"itertools", PyInit_itertools}, 124 {"_collections", PyInit__collections}, 125 {"_symtable", PyInit__symtable}, 126 {"mmap", PyInit_mmap}, 127 {"_csv", PyInit__csv}, 128 {"_sre", PyInit__sre}, 129 {"winreg", PyInit_winreg}, 130 {"_struct", PyInit__struct}, 131 {"_datetime", PyInit__datetime}, 132 {"_functools", PyInit__functools}, 133 {"_json", PyInit__json}, 134 135 {"xxsubtype", PyInit_xxsubtype}, 136 {"_xxsubinterpreters", PyInit__xxsubinterpreters}, 137 #ifdef _Py_HAVE_ZLIB 138 {"zlib", PyInit_zlib}, 139 #endif 140 141 /* CJK codecs */ 142 {"_multibytecodec", PyInit__multibytecodec}, 143 {"_codecs_cn", PyInit__codecs_cn}, 144 {"_codecs_hk", PyInit__codecs_hk}, 145 {"_codecs_iso2022", PyInit__codecs_iso2022}, 146 {"_codecs_jp", PyInit__codecs_jp}, 147 {"_codecs_kr", PyInit__codecs_kr}, 148 {"_codecs_tw", PyInit__codecs_tw}, 149 150 /* tools/freeze/makeconfig.py marker for additional "_inittab" entries */ 151 /* -- ADDMODULE MARKER 2 -- */ 152 153 /* This module "lives in" with marshal.c */ 154 {"marshal", PyMarshal_Init}, 155 156 /* This lives it with import.c */ 157 {"_imp", PyInit__imp}, 158 159 /* These entries are here for sys.builtin_module_names */ 160 {"builtins", NULL}, 161 {"sys", NULL}, 162 {"_warnings", _PyWarnings_Init}, 163 {"_string", PyInit__string}, 164 165 {"_io", PyInit__io}, 166 {"_pickle", PyInit__pickle}, 167 {"atexit", PyInit_atexit}, 168 {"_stat", PyInit__stat}, 169 {"_opcode", PyInit__opcode}, 170 171 {"_contextvars", PyInit__contextvars}, 172 173 /* Sentinel */ 174 {0, 0} 175 }; 176