g->ty.ht_type.tp_alloc = PyType_GenericAlloc;
g->ty.ht_type.tp_free = 0;
g->ty.ht_type.tp_new = gcipher_pynew;
- PyType_Ready(&g->ty.ht_type);
+ typeready(&g->ty.ht_type);
return ((PyObject *)g);
}
g->ty.ht_type.tp_alloc = PyType_GenericAlloc;
g->ty.ht_type.tp_free = 0;
g->ty.ht_type.tp_new = ghash_pynew;
- PyType_Ready(&g->ty.ht_type);
+ typeready(&g->ty.ht_type);
return ((PyObject *)g);
}
g->ty.ht_type.tp_alloc = PyType_GenericAlloc;
g->ty.ht_type.tp_free = 0;
g->ty.ht_type.tp_new = gmac_pynew;
- PyType_Ready(&g->ty.ht_type);
+ typeready(&g->ty.ht_type);
return ((PyObject *)g);
}
if (!cobj) cobj = gcmac_pywrap((/*unconst*/ gcmac *)GM_CLASS(m));
else Py_INCREF(cobj);
g = newtype((PyTypeObject *)cobj, 0, 0);
+ g->ty.ht_type.tp_basicsize = sizeof(ghash_pyobj);
g->ty.ht_name = PyString_FromFormat("%s(keyed)", m->ops->c->name);
g->ty.ht_type.tp_name = PyString_AS_STRING(g->ty.ht_name);
g->ty.ht_type.tp_base = gmhash_pytype;
g->ty.ht_type.tp_alloc = PyType_GenericAlloc;
g->ty.ht_type.tp_free = 0;
g->ty.ht_type.tp_new = gmhash_pynew;
- PyType_Ready(&g->ty.ht_type);
+ typeready(&g->ty.ht_type);
g->m = m;
g->f = f;
return ((PyObject *)g);
g->ty.ht_type.tp_alloc = PyType_GenericAlloc;
g->ty.ht_type.tp_free = 0;
g->ty.ht_type.tp_new = gprp_pynew;
- PyType_Ready(&g->ty.ht_type);
+ typeready(&g->ty.ht_type);
return ((PyObject *)g);
}