#include "catacomb-python.h"
+/*----- External values ---------------------------------------------------*/
+
+static PyObject *modname = 0;
+
/*----- Conversions -------------------------------------------------------*/
PyObject *getulong(unsigned long w)
return (ty);
}
+void typeready(PyTypeObject *ty)
+{
+ PyType_Ready(ty);
+ PyDict_SetItemString(ty->tp_dict, "__module__", modname);
+}
+
PyTypeObject *inittype(PyTypeObject *tyskel)
{
PyTypeObject *ty = newtype(&PyType_Type, tyskel, 0);
ty->tp_flags |= Py_TPFLAGS_HEAPTYPE;
- PyType_Ready(ty);
+ typeready(ty);
return (ty);
}
/*----- Exceptions --------------------------------------------------------*/
-PyObject * mkexc(PyObject *mod, PyObject *base,
- const char *name, PyMethodDef *mm)
+PyObject *mkexc(PyObject *mod, PyObject *base,
+ const char *name, PyMethodDef *mm)
{
PyObject *nameobj = 0;
PyObject *dict = 0;
0 /* @sq_inplace_repeat@ */
};
-int gmap_pysize(PyObject *me)
+Py_ssize_t gmap_pysize(PyObject *me)
{
PyObject *i = 0, *x = 0;
int rc = -1;
void util_pyinit(void)
{
+ modname = PyString_FromString("catacomb");
INITTYPE(itemiter, root);
INITTYPE(valiter, root);
}