mirror of
https://github.com/enjoy-digital/litex.git
synced 2025-01-04 09:52:26 -05:00
fhdl/tools: add input lister
This commit is contained in:
parent
f9849fb8be
commit
49ef182305
1 changed files with 17 additions and 0 deletions
|
@ -32,6 +32,17 @@ class _TargetLister(NodeVisitor):
|
|||
self.visit(choice)
|
||||
|
||||
|
||||
class _InputLister(NodeVisitor):
|
||||
def __init__(self):
|
||||
self.output_list = set()
|
||||
|
||||
def visit_Signal(self, node):
|
||||
self.output_list.add(node)
|
||||
|
||||
def visit_Assign(self, node):
|
||||
self.visit(node.r)
|
||||
|
||||
|
||||
def list_signals(node):
|
||||
lister = _SignalLister()
|
||||
lister.visit(node)
|
||||
|
@ -44,6 +55,12 @@ def list_targets(node):
|
|||
return lister.output_list
|
||||
|
||||
|
||||
def list_inputs(node):
|
||||
lister = _InputLister()
|
||||
lister.visit(node)
|
||||
return lister.output_list
|
||||
|
||||
|
||||
def _resort_statements(ol):
|
||||
return [statement for i, statement in
|
||||
sorted(ol, key=lambda x: x[0])]
|
||||
|
|
Loading…
Reference in a new issue