Kill a small potential leak in test_threading.
[python.git] / Python / importdl.h
blob5a2d45c46258299f0d426fa9f0fbfd2449e83287
1 #ifndef Py_IMPORTDL_H
2 #define Py_IMPORTDL_H
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
9 /* Definitions for dynamic loading of extension modules */
10 enum filetype {
11 SEARCH_ERROR,
12 PY_SOURCE,
13 PY_COMPILED,
14 C_EXTENSION,
15 PY_RESOURCE, /* Mac only */
16 PKG_DIRECTORY,
17 C_BUILTIN,
18 PY_FROZEN,
19 PY_CODERESOURCE, /* Mac only */
20 IMP_HOOK
23 struct filedescr {
24 char *suffix;
25 char *mode;
26 enum filetype type;
28 extern struct filedescr * _PyImport_Filetab;
29 extern const struct filedescr _PyImport_DynLoadFiletab[];
31 extern PyObject *_PyImport_LoadDynamicModule(char *name, char *pathname,
32 FILE *);
34 /* Max length of module suffix searched for -- accommodates "module.slb" */
35 #define MAXSUFFIXSIZE 12
37 #ifdef MS_WINDOWS
38 #include <windows.h>
39 typedef FARPROC dl_funcptr;
40 #else
41 #if defined(PYOS_OS2) && !defined(PYCC_GCC)
42 #include <os2def.h>
43 typedef int (* APIENTRY dl_funcptr)();
44 #else
45 typedef void (*dl_funcptr)(void);
46 #endif
47 #endif
50 #ifdef __cplusplus
52 #endif
53 #endif /* !Py_IMPORTDL_H */