summaryrefslogtreecommitdiff
path: root/htmtl/parsers/generic_value.py
blob: bac9577fdd3904ad663d8edc124a128352084c84 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
from typing import Optional
from dompa.nodes import Node
from ..parser import Parser


class GenericValue(Parser):
    def traverse(self, node: Node) -> Optional[Node]:
        new_attrs = {}

        for key, val in node.attributes.items():
            if key.startswith(":"):
                new_attrs[key[1:]] = self.parse_expression(val)
            else:
                new_attrs[key] = val

        node.attributes = new_attrs

        return node