DL_EXPORT(void)
initarray(void)
{
- PyObject *m, *d;
+ PyObject *m;
Arraytype.ob_type = &PyType_Type;
m = Py_InitModule3("array", a_methods, module_doc);
- d = PyModule_GetDict(m);
- PyDict_SetItemString(d, "ArrayType", (PyObject *)&Arraytype);
- PyDict_SetItemString(d, "array", (PyObject *)&Arraytype);
+
+ Py_INCREF((PyObject *)&Arraytype);
+ PyModule_AddObject(m, "ArrayType", (PyObject *)&Arraytype);
+ Py_INCREF((PyObject *)&Arraytype);
+ PyModule_AddObject(m, "array", (PyObject *)&Arraytype);
/* No need to check the error here, the caller will do that */
}
DL_EXPORT(void)
initcmath(void)
{
- PyObject *m, *d, *v;
+ PyObject *m;
m = Py_InitModule3("cmath", cmath_methods, module_doc);
- d = PyModule_GetDict(m);
- PyDict_SetItemString(d, "pi",
- v = PyFloat_FromDouble(atan(1.0) * 4.0));
- Py_DECREF(v);
- PyDict_SetItemString(d, "e", v = PyFloat_FromDouble(exp(1.0)));
- Py_DECREF(v);
+
+ PyModule_AddObject(m, "pi",
+ PyFloat_FromDouble(atan(1.0) * 4.0));
+ PyModule_AddObject(m, "e", PyFloat_FromDouble(exp(1.0)));
}