Staging
v0.8.1
Revision 72227035fe52ae825dac8760d8505dde64f041bf authored by Benjamin Peterson on 28 May 2009, 03:32:08 UTC, committed by Benjamin Peterson on 28 May 2009, 03:32:08 UTC
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r72977 | benjamin.peterson | 2009-05-27 22:30:13 -0500 (Wed, 27 May 2009) | 9 lines

  Merged revisions 72971 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r72971 | benjamin.peterson | 2009-05-27 22:02:13 -0500 (Wed, 27 May 2009) | 1 line

    switch library reference and language reference
  ........
................
1 parent dc020b1
Raw File
moduleobject.h

/* 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_New(const char *);
PyAPI_FUNC(PyObject *) PyModule_GetDict(PyObject *);
PyAPI_FUNC(const char *) PyModule_GetName(PyObject *);
PyAPI_FUNC(const char *) PyModule_GetFilename(PyObject *);
PyAPI_FUNC(void) _PyModule_Clear(PyObject *);
PyAPI_FUNC(struct PyModuleDef*) PyModule_GetDef(PyObject*);
PyAPI_FUNC(void*) PyModule_GetState(PyObject*);

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)}

typedef struct PyModuleDef{
  PyModuleDef_Base m_base;
  const char* m_name;
  const char* m_doc;
  Py_ssize_t m_size;
  PyMethodDef *m_methods;
  inquiry m_reload;
  traverseproc m_traverse;
  inquiry m_clear;
  freefunc m_free;
}PyModuleDef;


#ifdef __cplusplus
}
#endif
#endif /* !Py_MODULEOBJECT_H */
back to top