You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
/* Module object interface */
#ifndef Py_MODULEOBJECT_H
#define Py_MODULEOBJECT_H
#ifdef __cplusplus
extern "C" {#endif
PyAPI_DATA(PyTypeObject) PyModule_Type;
#define PyModule_Check(op) PyObject_TypeCheck(op, &PyModule_Type)
#define PyModule_CheckExact(op) (Py_TYPE(op) == &PyModule_Type)
PyAPI_FUNC(PyObject *) PyModule_NewObject( PyObject *name );PyAPI_FUNC(PyObject *) PyModule_New( const char *name /* UTF-8 encoded string */ );PyAPI_FUNC(PyObject *) PyModule_GetDict(PyObject *);PyAPI_FUNC(PyObject *) PyModule_GetNameObject(PyObject *);PyAPI_FUNC(const char *) PyModule_GetName(PyObject *);PyAPI_FUNC(const char *) PyModule_GetFilename(PyObject *);PyAPI_FUNC(PyObject *) PyModule_GetFilenameObject(PyObject *);#ifndef Py_LIMITED_API
PyAPI_FUNC(void) _PyModule_Clear(PyObject *);PyAPI_FUNC(void) _PyModule_ClearDict(PyObject *);#endif
PyAPI_FUNC(struct PyModuleDef*) PyModule_GetDef(PyObject*);PyAPI_FUNC(void*) PyModule_GetState(PyObject*);
#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000
/* New in 3.5 */PyAPI_FUNC(PyObject *) PyModuleDef_Init(struct PyModuleDef*);PyAPI_DATA(PyTypeObject) PyModuleDef_Type;#endif
typedef struct PyModuleDef_Base { PyObject_HEAD PyObject* (*m_init)(void); Py_ssize_t m_index; PyObject* m_copy;} PyModuleDef_Base;
#define PyModuleDef_HEAD_INIT { \
PyObject_HEAD_INIT(NULL) \ NULL, /* m_init */ \ 0, /* m_index */ \ NULL, /* m_copy */ \ }
struct PyModuleDef_Slot;#if !defined(Py_LIMITED_API) || Py_LIMITED_API+0 >= 0x03050000
/* New in 3.5 */typedef struct PyModuleDef_Slot{ int slot; void *value;} PyModuleDef_Slot;
#define Py_mod_create 1
#define Py_mod_exec 2
#ifndef Py_LIMITED_API
#define _Py_mod_LAST_SLOT 2
#endif
#endif /* New in 3.5 */
typedef struct PyModuleDef{ PyModuleDef_Base m_base; const char* m_name; const char* m_doc; Py_ssize_t m_size; PyMethodDef *m_methods; struct PyModuleDef_Slot* m_slots; traverseproc m_traverse; inquiry m_clear; freefunc m_free;}PyModuleDef;
#ifdef __cplusplus
}#endif
#endif /* !Py_MODULEOBJECT_H */
|