NotGate constructor
Constructs a NotGate with in_ as its input.
You can optionally set name to name this Module.
Implementation
NotGate(Logic in_, {super.name = 'not'}) {
_inName = Naming.unpreferredName(in_.name);
_outName = Naming.unpreferredName('${in_.name}_b');
addInput(_inName, in_, width: in_.width);
addOutput(_outName, width: in_.width)
.makeUnassignable(reason: 'Output of a gate $this cannot be assigned.');
_setup();
}