From 6c2d46e785abb939a5cc9a0d752241d54da46683 Mon Sep 17 00:00:00 2001 From: Stefan Behnel Date: Sun, 2 Dec 2018 16:20:37 +0100 Subject: Speed up sax.py by converting ElementTreeProducer into an extension type and inlining its internal method calls. --- src/lxml/sax.pxd | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 src/lxml/sax.pxd diff --git a/src/lxml/sax.pxd b/src/lxml/sax.pxd new file mode 100644 index 00000000..215e53fa --- /dev/null +++ b/src/lxml/sax.pxd @@ -0,0 +1,14 @@ +cimport cython + +cdef tuple _getNsTag(tag) + +cdef class ElementTreeProducer: + cdef _element + cdef _content_handler + cdef _attr_class + cdef _empty_attributes + + @cython.locals(element_nsmap=dict) + cdef inline _recursive_saxify(self, element, dict parent_nsmap) + + cdef inline _build_qname(self, ns_uri, local_name, dict nsmap, preferred_prefix, bint is_attribute) -- cgit v1.2.1