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