diff options
Diffstat (limited to 'python/mllib/dom.py')
-rw-r--r-- | python/mllib/dom.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/python/mllib/dom.py b/python/mllib/dom.py index df2b88322a..486f7082e1 100644 --- a/python/mllib/dom.py +++ b/python/mllib/dom.py @@ -148,6 +148,21 @@ class Tag(Node): if name == k: return v + def _idx(self, attr): + idx = 0 + for k, v in self.attrs: + if k == attr: + return idx + idx += 1 + return None + + def set_attr(self, name, value): + idx = self._idx(name) + if idx is None: + self.attrs.append((name, value)) + else: + self.attrs[idx] = (name, value) + def dispatch(self, f): try: attr = "do_" + self.name |