Commit cb5b3999 authored by Fred Drake's avatar Fred Drake

fixup_descriptors(): Change the way we look for descriptor nodes;

	this takes 5 minutes off the conversion of the whole tree by
	reducing the number of tree-traversals from 14 to 1.
parent 5809c45e
......@@ -131,10 +131,21 @@ DESCRIPTOR_ELEMENTS = (
)
def fixup_descriptors(doc):
for tagName in DESCRIPTOR_ELEMENTS:
nodes = find_all_elements(doc, tagName)
for node in nodes:
rewrite_descriptor(doc, node)
sections = find_all_elements(doc, "section")
for section in sections:
find_and_fix_descriptors(doc, section)
def find_and_fix_descriptors(doc, container):
children = container.childNodes
for child in children:
if child.nodeType == xml.dom.core.ELEMENT:
tagName = child.tagName
if tagName in DESCRIPTOR_ELEMENTS:
rewrite_descriptor(doc, child)
elif tagName == "subsection":
find_and_fix_descriptors(doc, child)
def rewrite_descriptor(doc, descriptor):
#
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment