Some small tweaks
This commit is contained in:
parent
80d932b36a
commit
2d87207b54
1 changed files with 3 additions and 2 deletions
|
|
@ -1623,7 +1623,7 @@ class Terminal(Rule):
|
||||||
yield [self]
|
yield [self]
|
||||||
|
|
||||||
def __repr__(self) -> str:
|
def __repr__(self) -> str:
|
||||||
return self.name or "???"
|
return self.name or "<Unknown terminal>"
|
||||||
|
|
||||||
|
|
||||||
class NonTerminal(Rule):
|
class NonTerminal(Rule):
|
||||||
|
|
@ -2064,6 +2064,7 @@ UNICODE_MAX_CP = 1114112
|
||||||
@dataclasses.dataclass
|
@dataclasses.dataclass
|
||||||
class ReSet(Re):
|
class ReSet(Re):
|
||||||
values: list[Span]
|
values: list[Span]
|
||||||
|
inversion: bool = False # No semantic meaning, just pretty.
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def from_ranges(cls, *args: str | tuple[str, str]) -> "ReSet":
|
def from_ranges(cls, *args: str | tuple[str, str]) -> "ReSet":
|
||||||
|
|
@ -2100,7 +2101,7 @@ class ReSet(Re):
|
||||||
assert lower < upper
|
assert lower < upper
|
||||||
spans.append(Span(lower, upper))
|
spans.append(Span(lower, upper))
|
||||||
|
|
||||||
return ReSet(spans)
|
return ReSet(spans, inversion=not self.inversion)
|
||||||
|
|
||||||
def __invert__(self) -> "ReSet":
|
def __invert__(self) -> "ReSet":
|
||||||
return self.invert()
|
return self.invert()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue