comparison Python/sysmodule.c @ 47580:94f64f11fdd0

Implement PEP 3121: new module initialization and finalization API.
author Martin v. Löwis <martin@v.loewis.de>
date Wed, 11 Jun 2008 05:26:20 +0000
parents 7a1d4e8233f8
children c0c06ffaea83
comparison
equal deleted inserted replaced
47579:e81deccb17c6 47580:94f64f11fdd0
1191 return NULL; 1191 return NULL;
1192 } 1192 }
1193 return seq; 1193 return seq;
1194 } 1194 }
1195 1195
1196 static struct PyModuleDef sysmodule = {
1197 PyModuleDef_HEAD_INIT,
1198 "sys",
1199 sys_doc,
1200 0,
1201 sys_methods,
1202 NULL,
1203 NULL,
1204 NULL,
1205 NULL
1206 };
1207
1208
1209
1196 PyObject * 1210 PyObject *
1197 _PySys_Init(void) 1211 _PySys_Init(void)
1198 { 1212 {
1199 PyObject *m, *v, *sysdict; 1213 PyObject *m, *v, *sysdict;
1200 char *s; 1214 char *s;
1201 1215
1202 m = Py_InitModule3("sys", sys_methods, sys_doc); 1216 m = PyModule_Create(&sysmodule);
1203 if (m == NULL) 1217 if (m == NULL)
1204 return NULL; 1218 return NULL;
1205 sysdict = PyModule_GetDict(m); 1219 sysdict = PyModule_GetDict(m);
1206 #define SET_SYS_FROM_STRING(key, value) \ 1220 #define SET_SYS_FROM_STRING(key, value) \
1207 v = value; \ 1221 v = value; \