Case#

class hugr.ops.Case(inputs: list[Type], _outputs: list[Type] | None = None, num_out: int = 0)[source]#

Bases: DfParentOp

Parent of a dataflow graph that is a branch of a Conditional.

Methods

inner_signature

Inner signature of the child dataflow graph.

name

Name of the operation.

port_kind

Get the kind of the given port.

Attributes

num_out

outputs

Outputs of the case operation.

inputs

Inputs types of the inner dataflow graph.

inner_signature() FunctionType[source]#

Inner signature of the child dataflow graph.

inputs: list[Type]#

Inputs types of the inner dataflow graph.

name() str[source]#

Name of the operation.

property outputs: list[Type]#

Outputs of the case operation.

Raises:

IncompleteOp – If the outputs have not been set.

port_kind(port: InPort | OutPort) ValueKind | ConstKind | FunctionKind | CFKind | OrderKind[source]#

Get the kind of the given port.

Example

>>> op = Const(val.TRUE)
>>> op.port_kind(OutPort(Node(0), 0))
ConstKind(Bool)