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