pub trait TaggedPackedTransformationFactory<Strategy, OP>: PackedBinaryField{
    type PackedTransformation<Data: Deref<Target = [OP::Scalar]>>: Transformation<Self, OP>;

    // Required method
    fn make_packed_transformation<Data: Deref<Target = [OP::Scalar]>>(
        transformation: FieldLinearTransformation<OP::Scalar, Data>
    ) -> Self::PackedTransformation<Data>;
}
Expand description

Linear transformation factory that is parameterized with some strategy.

Required Associated Types§

source

type PackedTransformation<Data: Deref<Target = [OP::Scalar]>>: Transformation<Self, OP>

Required Methods§

source

fn make_packed_transformation<Data: Deref<Target = [OP::Scalar]>>( transformation: FieldLinearTransformation<OP::Scalar, Data> ) -> Self::PackedTransformation<Data>

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<IP, OP> TaggedPackedTransformationFactory<PackedStrategy, OP> for IP

§

type PackedTransformation<Data: Deref<Target = [OP::Scalar]>> = PackedTransformation<OP>

source§

impl<IP, OP> TaggedPackedTransformationFactory<PairwiseStrategy, OP> for IP

§

type PackedTransformation<Data: Deref<Target = [OP::Scalar]>> = PairwiseTransformation<FieldLinearTransformation<<OP as PackedField>::Scalar, Data>>

source§

impl<IP, OP> TaggedPackedTransformationFactory<SimdStrategy, OP> for IP
where IP: PackedBinaryField + WithUnderlier<Underlier: UnderlierWithBitOps>, OP: PackedBinaryField + WithUnderlier<Underlier = IP::Underlier>, IP::Underlier: TowerSimdType,

§

type PackedTransformation<Data: Deref<Target = [OP::Scalar]>> = SimdTransformation<OP>