CaseZ class Null safety

A special version of Case which can do wildcard matching via z in the expression.

Any z in the value of a CaseItem will act as a wildcard.

Does not support SystemVerilog's ? syntax, which is exactly functionally equivalent to z syntax.



CaseZ(Logic expression, List<CaseItem> items, {List<Conditional>? defaultItem, ConditionalType conditionalType = ConditionalType.none})
Whenever an item in items matches expression, it will be executed, but the definition of matches allows for z to be a wildcard.


caseType String
Returns the SystemVerilog keyword to represent this case block.
read-only, override
conditionalType ConditionalType
The type of case block this is, for special attributes (e.g. ConditionalType.unique, ConditionalType.priority).
final, inherited
defaultItem List<Conditional>?
The default to execute when there was no match with any other CaseItems.
final, inherited
expression Logic
A logical signal to match against.
final, inherited
hashCode int
The hash code for this object.
read-only, inherited
items List<CaseItem>
An ordered collection of CaseItems to search through for a match to expression.
final, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited


driverInput(Logic driver) Logic
Gets the input port associated with driver.
@protected, inherited
driverValue(Logic driver) LogicValue
Gets the value that should be used for execution for the input port associated with driver.
@protected, inherited
execute() Set<Logic>
Executes the functionality represented by this Conditional.
getConditionals() List<Conditional>
Lists of all Conditionals contained within this Conditional (not including itself).
getDrivers() List<Logic>
Lists all drivers, recursively including all sub-Conditionals drivers.
getReceivers() List<Logic>
Lists all receivers, recursively including all sub-Conditionals receivers.
isMatch(LogicValue value) bool
Returns true iff value matches the expressions current value.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
receiverOutput(Logic receiver) Logic
Gets the output port associated with receiver.
@protected, inherited
toString() String
A string representation of this object.
verilogContents(int indent, Map<String, String> inputsNameMap, Map<String, String> outputsNameMap, String assignOperator) String
Returns a String of SystemVerilog to be used in generated output.


operator ==(Object other) bool
The equality operator.