diff options
Diffstat (limited to 'mammoth/html_paths.py')
| -rw-r--r-- | mammoth/html_paths.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/mammoth/html_paths.py b/mammoth/html_paths.py index e043e23..487f278 100644 --- a/mammoth/html_paths.py +++ b/mammoth/html_paths.py @@ -19,9 +19,11 @@ def element(names, class_names=None, fresh=None): class HtmlPath(object): elements = cobble.field() - def wrap(self, nodes): + def wrap(self, generate_nodes): + nodes = generate_nodes() + for element in reversed(self.elements): - nodes = element.wrap(nodes) + nodes = element.wrap_nodes(nodes) return nodes @@ -31,7 +33,10 @@ class HtmlPathElement(object): class_names = cobble.field() fresh = cobble.field() - def wrap(self, nodes): + def wrap(self, generate_nodes): + return self.wrap_nodes(generate_nodes()) + + def wrap_nodes(self, nodes): if self.class_names: attributes = {"class": " ".join(self.class_names)} else: |
