build.dsl: accept Pins(invert=True).

The PinsN() form is still preferred, but Pins(invert=) form is useful
for code generic over pin polarity.
This commit is contained in:
whitequark 2019-10-03 02:44:43 +00:00
parent 9458de2079
commit 751ae33fe1
2 changed files with 6 additions and 2 deletions

View file

@ -6,7 +6,7 @@ __all__ = ["Pins", "PinsN", "DiffPairs", "DiffPairsN",
class Pins:
def __init__(self, names, *, dir="io", conn=None, assert_width=None):
def __init__(self, names, *, dir="io", invert=False, conn=None, assert_width=None):
if not isinstance(names, str):
raise TypeError("Names must be a whitespace-separated string, not {!r}"
.format(names))
@ -29,7 +29,7 @@ class Pins:
self.names = names
self.dir = dir
self.invert = False
self.invert = bool(invert)
def __len__(self):
return len(self.names)