nodes: add several asserts to make debugging some weird internal issues easier
This commit is contained in:
parent
d2d519acf4
commit
ddd3b13d28
1 changed files with 2 additions and 0 deletions
|
|
@ -25,6 +25,7 @@ class Node:
|
||||||
|
|
||||||
@functools.cache
|
@functools.cache
|
||||||
def location(self) -> SourceLocation:
|
def location(self) -> SourceLocation:
|
||||||
|
assert len(self._values()) > 0
|
||||||
locations = [v.location() for v in self._values()]
|
locations = [v.location() for v in self._values()]
|
||||||
begin = min([loc.begin for loc in locations])
|
begin = min([loc.begin for loc in locations])
|
||||||
end = max([loc.end for loc in locations])
|
end = max([loc.end for loc in locations])
|
||||||
|
|
@ -271,6 +272,7 @@ class Statement(Node):
|
||||||
self.pseudo_nodes = pseudo_nodes
|
self.pseudo_nodes = pseudo_nodes
|
||||||
|
|
||||||
def _values(self) -> list[Node | Any]:
|
def _values(self) -> list[Node | Any]:
|
||||||
|
assert len(self.nodes) + len(self.pseudo_nodes) > 0
|
||||||
return self.nodes + self.pseudo_nodes
|
return self.nodes + self.pseudo_nodes
|
||||||
|
|
||||||
def intermediate_representation(self) -> list[ir.IRItem]:
|
def intermediate_representation(self) -> list[ir.IRItem]:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue