#include <longintrepr.h>
#include <structmember.h>
-#include <mLib/darray.h>
#include <mLib/dstr.h>
#include <mLib/macros.h>
#include <mLib/quis.h>
return (0); \
}
-#if PY_VERSION_HEX < 0x02050000 /* Compatibility hack */
-# define ht_name name
-# define ht_type type
-#endif
-
#define root_pytype 0
#define type_pytype &PyType_Type
#define INITTYPE_META(ty, base, meta) do { \
#define INITTYPE(ty, base) INITTYPE_META(ty, base, type)
extern PyObject *home_module;
+extern PyObject *modname;
#define INSERT(name, ob) do { \
PyObject *_o = (PyObject *)(ob); \
#define DOMODINSERT(m) m##_pyinsert(mod);
#define INIT_MODULES do { MODULES(DOMODINIT) } while (0)
#define INSERT_MODULES do { MODULES(DOMODINSERT) } while (0)
-
-#define DO(m) \
+#define DECLARE_MODINIT(m) \
extern void m##_pyinit(void); \
extern void m##_pyinsert(PyObject *);
-MODULES(DO)
-#undef DO
+
+MODULES(DECLARE_MODINIT)
#define FREEOBJ(obj) \
(((PyObject *)(obj))->ob_type->tp_free((PyObject *)(obj)))
METH (iterkeys, "D.iterkeys() -> ITER") \
METH (itervalues, "D.itervalues() -> ITER") \
METH (iteritems, "D.iteritems() -> ITER") \
- KWMETH(get, "D.get(KEY, [default = None]) -> VALUE") \
+ KWMETH(get, "D.get(KEY, [default = None]) -> VALUE")
#define GMAP_DOMETHODS(METH, KWMETH) \
GMAP_DOROMETHODS(METH, KWMETH) \