summaryrefslogtreecommitdiff
path: root/htmtl/expression_parser.py
blob: 6db16b1313852483f72aeba68d008f51573eaa93 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
from typing import Dict, Any, Optional

from htmtl.expression_modifier import ExpressionModifier


class ExpressionParser:
    __data: Dict[str, Any]
    __expression_modifiers: list[type[ExpressionModifier]]

    def __init__(self, data: Dict[str, Any], expression_modifiers: list[type[ExpressionModifier]]) -> None:
        self.__data = data
        self.__expression_modifiers = expression_modifiers

    def parse(self, expression: str) -> Any:
        pass

    def parse_interpolation(self, interpolation: str) -> Any:
        pass

    def use_modifier(self, value: Any, modifier_name: str, modifier_opts: list[Any]) -> Any:
        pass

    def find_modifier(self, name: str) -> Optional[ExpressionModifier]:
        pass

    def var_to_val(self, var: str) -> Any:
        pass