Tuple

class hugr.tys.Tuple(*tys: Type)[source]

Bases: Sum

Product type with tys elements. Instances of this type correspond to Sum with a single variant.

Methods

as_tuple

render

Render this sum type.

resolve

Resolve types in the type using the given registry.

to_model

Convert the type to a model Term.

type_arg

The TypeTypeArg for this type.

type_bound

The bound of this type.

Attributes

variant_rows

render(*, extension_version: bool = False, qualified_name: bool = False) → str

Render this sum type.

resolve(registry: ext.ExtensionRegistry) → Type

Resolve types in the type using the given registry.

to_model() → Term

Convert the type to a model Term.

type_arg() → TypeTypeArg

The TypeTypeArg for this type.

Example

>>> Qubit.type_arg()
TypeTypeArg(ty=Qubit)
type_bound() → TypeBound

The bound of this type.

Example

>>> Tuple(Bool, Bool).type_bound()
TypeBound.Copyable
>>> Tuple(Qubit, Bool).type_bound()
TypeBound.Linear