xref: /third_party/python/Python/importdl.h (revision 7db96d56)
1#ifndef Py_IMPORTDL_H
2#define Py_IMPORTDL_H
3
4#ifdef __cplusplus
5extern "C" {
6#endif
7
8
9extern const char *_PyImport_DynLoadFiletab[];
10
11extern PyObject *_PyImport_LoadDynamicModuleWithSpec(PyObject *spec, FILE *);
12
13typedef PyObject *(*PyModInitFunction)(void);
14
15#if defined(__EMSCRIPTEN__) && defined(PY_CALL_TRAMPOLINE)
16extern PyObject *_PyImport_InitFunc_TrampolineCall(PyModInitFunction func);
17#else
18#define _PyImport_InitFunc_TrampolineCall(func) (func)()
19#endif
20
21/* Max length of module suffix searched for -- accommodates "module.slb" */
22#define MAXSUFFIXSIZE 12
23
24#ifdef MS_WINDOWS
25#include <windows.h>
26typedef FARPROC dl_funcptr;
27#else
28typedef void (*dl_funcptr)(void);
29#endif
30
31
32#ifdef __cplusplus
33}
34#endif
35#endif /* !Py_IMPORTDL_H */
36