コード例 #1
0
ファイル: core.py プロジェクト: hackathlete/fusesoc
class String(str):
    def __init__(self, string):
        self.exprs = None

    def parse(self, flags):
        if self.exprs is None:
            self.exprs = Exprs(str(self))
        return self.exprs.expand(flags)
コード例 #2
0
ファイル: core.py プロジェクト: GCHQDeveloper560/fusesoc
class StringWithUseFlags(str):
    """ A parsed string with support for use flags. """
    def __init__(self, string):
        self.exprs = None

    def parse(self, flags):
        if self.exprs is None:
            self.exprs = Exprs(str(self))
        return self.exprs.expand(flags)
コード例 #3
0
def check_parses_to(string, ast):
    assert Exprs(string).ast == ast
コード例 #4
0
def check_expand(string, flags, expansion):
    assert Exprs(string).expand(flags) == expansion
コード例 #5
0
def check_parse_error(string):
    with pytest.raises(ValueError) as err:
        Exprs(string)
    assert "Invalid syntax for string:" in str(err.value)
コード例 #6
0
ファイル: core.py プロジェクト: hackathlete/fusesoc
 def parse(self, flags):
     if self.exprs is None:
         self.exprs = Exprs(str(self))
     return self.exprs.expand(flags)