• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* Module configuration */
2 
3 /* This file contains the table of built-in modules.
4    See init_builtin() in import.c. */
5 
6 #include "Python.h"
7 
8 extern void initarray(void);
9 #ifndef MS_WINI64
10 extern void initaudioop(void);
11 #endif
12 extern void initbinascii(void);
13 extern void initcmath(void);
14 extern void initerrno(void);
15 extern void initfuture_builtins(void);
16 extern void initgc(void);
17 #ifndef MS_WINI64
18 extern void initimageop(void);
19 #endif
20 extern void initmath(void);
21 extern void init_md5(void);
22 extern void initnt(void);
23 extern void initoperator(void);
24 extern void initsignal(void);
25 extern void init_sha(void);
26 extern void init_sha256(void);
27 extern void init_sha512(void);
28 extern void initstrop(void);
29 extern void inittime(void);
30 extern void initthread(void);
31 extern void initcStringIO(void);
32 extern void initcPickle(void);
33 #ifdef WIN32
34 extern void initmsvcrt(void);
35 extern void init_locale(void);
36 #endif
37 extern void init_codecs(void);
38 extern void init_weakref(void);
39 extern void init_hotshot(void);
40 extern void initxxsubtype(void);
41 extern void initzipimport(void);
42 extern void init_random(void);
43 extern void inititertools(void);
44 extern void init_collections(void);
45 extern void init_heapq(void);
46 extern void init_bisect(void);
47 extern void init_symtable(void);
48 extern void initmmap(void);
49 extern void init_csv(void);
50 extern void init_sre(void);
51 extern void initparser(void);
52 extern void init_winreg(void);
53 extern void init_struct(void);
54 extern void initdatetime(void);
55 extern void init_functools(void);
56 extern void init_json(void);
57 extern void initzlib(void);
58 
59 extern void init_multibytecodec(void);
60 extern void init_codecs_cn(void);
61 extern void init_codecs_hk(void);
62 extern void init_codecs_iso2022(void);
63 extern void init_codecs_jp(void);
64 extern void init_codecs_kr(void);
65 extern void init_codecs_tw(void);
66 extern void init_subprocess(void);
67 extern void init_lsprof(void);
68 extern void init_ast(void);
69 extern void init_io(void);
70 extern void _PyWarnings_Init(void);
71 
72 /* tools/freeze/makeconfig.py marker for additional "extern" */
73 /* -- ADDMODULE MARKER 1 -- */
74 
75 extern void PyMarshal_Init(void);
76 extern void initimp(void);
77 
78 struct _inittab _PyImport_Inittab[] = {
79 
80     {"array", initarray},
81     {"_ast", init_ast},
82 #ifdef MS_WINDOWS
83 #ifndef MS_WINI64
84     {"audioop", initaudioop},
85 #endif
86 #endif
87     {"binascii", initbinascii},
88     {"cmath", initcmath},
89     {"errno", initerrno},
90     {"future_builtins", initfuture_builtins},
91     {"gc", initgc},
92 #ifndef MS_WINI64
93     {"imageop", initimageop},
94 #endif
95     {"math", initmath},
96     {"_md5", init_md5},
97     {"nt", initnt}, /* Use the NT os functions, not posix */
98     {"operator", initoperator},
99     {"signal", initsignal},
100     {"_sha", init_sha},
101     {"_sha256", init_sha256},
102     {"_sha512", init_sha512},
103     {"strop", initstrop},
104     {"time", inittime},
105 #ifdef WITH_THREAD
106     {"thread", initthread},
107 #endif
108     {"cStringIO", initcStringIO},
109     {"cPickle", initcPickle},
110 #ifdef WIN32
111     {"msvcrt", initmsvcrt},
112     {"_locale", init_locale},
113 #endif
114     /* XXX Should _subprocess go in a WIN32 block?  not WIN64? */
115     {"_subprocess", init_subprocess},
116 
117     {"_codecs", init_codecs},
118     {"_weakref", init_weakref},
119     {"_hotshot", init_hotshot},
120     {"_random", init_random},
121     {"_bisect", init_bisect},
122     {"_heapq", init_heapq},
123     {"_lsprof", init_lsprof},
124     {"itertools", inititertools},
125     {"_collections", init_collections},
126     {"_symtable", init_symtable},
127     {"mmap", initmmap},
128     {"_csv", init_csv},
129     {"_sre", init_sre},
130     {"parser", initparser},
131     {"_winreg", init_winreg},
132     {"_struct", init_struct},
133     {"datetime", initdatetime},
134     {"_functools", init_functools},
135     {"_json", init_json},
136 
137     {"xxsubtype", initxxsubtype},
138     {"zipimport", initzipimport},
139     {"zlib", initzlib},
140 
141     /* CJK codecs */
142     {"_multibytecodec", init_multibytecodec},
143     {"_codecs_cn", init_codecs_cn},
144     {"_codecs_hk", init_codecs_hk},
145     {"_codecs_iso2022", init_codecs_iso2022},
146     {"_codecs_jp", init_codecs_jp},
147     {"_codecs_kr", init_codecs_kr},
148     {"_codecs_tw", init_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", initimp},
158 
159     /* These entries are here for sys.builtin_module_names */
160     {"__main__", NULL},
161     {"__builtin__", NULL},
162     {"sys", NULL},
163     {"exceptions", NULL},
164     {"_warnings", _PyWarnings_Init},
165 
166     {"_io", init_io},
167 
168     /* Sentinel */
169     {0, 0}
170 };
171