mirror of
https://github.com/python/cpython.git
synced 2025-10-23 07:02:24 +00:00
bpo-40024: Update _elementtree to use PyModule_AddType() (GH-19205)
This commit is contained in:
parent
34a49aa3e4
commit
016bdd519d
1 changed files with 14 additions and 8 deletions
|
@ -4419,16 +4419,22 @@ PyInit__elementtree(void)
|
||||||
"xml.etree.ElementTree.ParseError", PyExc_SyntaxError, NULL
|
"xml.etree.ElementTree.ParseError", PyExc_SyntaxError, NULL
|
||||||
);
|
);
|
||||||
Py_INCREF(st->parseerror_obj);
|
Py_INCREF(st->parseerror_obj);
|
||||||
PyModule_AddObject(m, "ParseError", st->parseerror_obj);
|
if (PyModule_AddObject(m, "ParseError", st->parseerror_obj) < 0) {
|
||||||
|
Py_DECREF(st->parseerror_obj);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
Py_INCREF((PyObject *)&Element_Type);
|
PyTypeObject *types[] = {
|
||||||
PyModule_AddObject(m, "Element", (PyObject *)&Element_Type);
|
&Element_Type,
|
||||||
|
&TreeBuilder_Type,
|
||||||
|
&XMLParser_Type
|
||||||
|
};
|
||||||
|
|
||||||
Py_INCREF((PyObject *)&TreeBuilder_Type);
|
for (size_t i = 0; i < Py_ARRAY_LENGTH(types); i++) {
|
||||||
PyModule_AddObject(m, "TreeBuilder", (PyObject *)&TreeBuilder_Type);
|
if (PyModule_AddType(m, types[i]) < 0) {
|
||||||
|
return NULL;
|
||||||
Py_INCREF((PyObject *)&XMLParser_Type);
|
}
|
||||||
PyModule_AddObject(m, "XMLParser", (PyObject *)&XMLParser_Type);
|
}
|
||||||
|
|
||||||
return m;
|
return m;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue