pub trait ComposableElementOp<T>: ElementOp<T>where
T: ElementOpApply,{
type Inverse: ComposableElementOp<T>;
type ComposeConj: ComposableElementOp<T>;
type ComposeTranspose: ComposableElementOp<T>;
type ComposeAdjoint: ComposableElementOp<T>;
}Expand description
Trait for element operations that support type-level composition.
Only available when T: ElementOpApply, since composition with
Conj/Transpose/Adjoint requires the element type to support
those operations.
Required Associated Types§
Sourcetype Inverse: ComposableElementOp<T>
type Inverse: ComposableElementOp<T>
The inverse operation (for this group, each element is its own inverse).
Sourcetype ComposeConj: ComposableElementOp<T>
type ComposeConj: ComposableElementOp<T>
Compose with Conj: Self then Conj
Sourcetype ComposeTranspose: ComposableElementOp<T>
type ComposeTranspose: ComposableElementOp<T>
Compose with Transpose: Self then Transpose
Sourcetype ComposeAdjoint: ComposableElementOp<T>
type ComposeAdjoint: ComposableElementOp<T>
Compose with Adjoint: Self then Adjoint
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.