pub struct ByteSlicedAES32x16b { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl Add<AESTowerField16b> for ByteSlicedAES32x16b
impl Add<AESTowerField16b> for ByteSlicedAES32x16b
Source§type Output = ByteSlicedAES32x16b
type Output = ByteSlicedAES32x16b
The resulting type after applying the
+
operator.Source§fn add(self, rhs: AESTowerField16b) -> ByteSlicedAES32x16b
fn add(self, rhs: AESTowerField16b) -> ByteSlicedAES32x16b
Performs the
+
operation. Read moreSource§impl Add for ByteSlicedAES32x16b
impl Add for ByteSlicedAES32x16b
Source§impl AddAssign<AESTowerField16b> for ByteSlicedAES32x16b
impl AddAssign<AESTowerField16b> for ByteSlicedAES32x16b
Source§fn add_assign(&mut self, rhs: AESTowerField16b)
fn add_assign(&mut self, rhs: AESTowerField16b)
Performs the
+=
operation. Read moreSource§impl AddAssign for ByteSlicedAES32x16b
impl AddAssign for ByteSlicedAES32x16b
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+=
operation. Read moreSource§impl Clone for ByteSlicedAES32x16b
impl Clone for ByteSlicedAES32x16b
Source§fn clone(&self) -> ByteSlicedAES32x16b
fn clone(&self) -> ByteSlicedAES32x16b
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ByteSlicedAES32x16b
impl Debug for ByteSlicedAES32x16b
Source§impl Default for ByteSlicedAES32x16b
impl Default for ByteSlicedAES32x16b
Source§fn default() -> ByteSlicedAES32x16b
fn default() -> ByteSlicedAES32x16b
Returns the “default value” for a type. Read more
Source§impl Mul<AESTowerField16b> for ByteSlicedAES32x16b
impl Mul<AESTowerField16b> for ByteSlicedAES32x16b
Source§type Output = ByteSlicedAES32x16b
type Output = ByteSlicedAES32x16b
The resulting type after applying the
*
operator.Source§fn mul(self, rhs: AESTowerField16b) -> ByteSlicedAES32x16b
fn mul(self, rhs: AESTowerField16b) -> ByteSlicedAES32x16b
Performs the
*
operation. Read moreSource§impl Mul for ByteSlicedAES32x16b
impl Mul for ByteSlicedAES32x16b
Source§impl MulAssign<AESTowerField16b> for ByteSlicedAES32x16b
impl MulAssign<AESTowerField16b> for ByteSlicedAES32x16b
Source§fn mul_assign(&mut self, rhs: AESTowerField16b)
fn mul_assign(&mut self, rhs: AESTowerField16b)
Performs the
*=
operation. Read moreSource§impl MulAssign for ByteSlicedAES32x16b
impl MulAssign for ByteSlicedAES32x16b
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*=
operation. Read moreSource§impl PackedExtension<AESTowerField16b> for ByteSlicedAES32x16b
impl PackedExtension<AESTowerField16b> for ByteSlicedAES32x16b
type PackedSubfield = ByteSlicedAES32x16b
fn cast_bases(packed: &[Self]) -> &[Self::PackedSubfield]
fn cast_bases_mut(packed: &mut [Self]) -> &mut [Self::PackedSubfield]
fn cast_exts(packed: &[Self::PackedSubfield]) -> &[Self]
fn cast_exts_mut(packed: &mut [Self::PackedSubfield]) -> &mut [Self]
fn cast_base(self) -> Self::PackedSubfield
fn cast_base_ref(&self) -> &Self::PackedSubfield
fn cast_base_mut(&mut self) -> &mut Self::PackedSubfield
fn cast_ext(base: Self::PackedSubfield) -> Self
fn cast_ext_ref(base: &Self::PackedSubfield) -> &Self
fn cast_ext_mut(base: &mut Self::PackedSubfield) -> &mut Self
fn cast_base_arr<const N: usize>(packed: [Self; N]) -> [Self::PackedSubfield; N]
fn cast_base_arr_ref<const N: usize>( packed: &[Self; N], ) -> &[Self::PackedSubfield; N]
fn cast_base_arr_mut<const N: usize>( packed: &mut [Self; N], ) -> &mut [Self::PackedSubfield; N]
fn cast_ext_arr<const N: usize>(packed: [Self::PackedSubfield; N]) -> [Self; N]
fn cast_ext_arr_ref<const N: usize>( packed: &[Self::PackedSubfield; N], ) -> &[Self; N]
fn cast_ext_arr_mut<const N: usize>( packed: &mut [Self::PackedSubfield; N], ) -> &mut [Self; N]
Source§impl PackedExtension<AESTowerField8b> for ByteSlicedAES32x16b
impl PackedExtension<AESTowerField8b> for ByteSlicedAES32x16b
type PackedSubfield = ByteSlicedAES2x32x8b
fn cast_bases(packed: &[Self]) -> &[Self::PackedSubfield]
fn cast_bases_mut(packed: &mut [Self]) -> &mut [Self::PackedSubfield]
fn cast_exts(packed: &[Self::PackedSubfield]) -> &[Self]
fn cast_exts_mut(packed: &mut [Self::PackedSubfield]) -> &mut [Self]
fn cast_base(self) -> Self::PackedSubfield
fn cast_base_ref(&self) -> &Self::PackedSubfield
fn cast_base_mut(&mut self) -> &mut Self::PackedSubfield
fn cast_ext(base: Self::PackedSubfield) -> Self
fn cast_ext_ref(base: &Self::PackedSubfield) -> &Self
fn cast_ext_mut(base: &mut Self::PackedSubfield) -> &mut Self
fn cast_base_arr<const N: usize>(packed: [Self; N]) -> [Self::PackedSubfield; N]
fn cast_base_arr_ref<const N: usize>( packed: &[Self; N], ) -> &[Self::PackedSubfield; N]
fn cast_base_arr_mut<const N: usize>( packed: &mut [Self; N], ) -> &mut [Self::PackedSubfield; N]
fn cast_ext_arr<const N: usize>(packed: [Self::PackedSubfield; N]) -> [Self; N]
fn cast_ext_arr_ref<const N: usize>( packed: &[Self::PackedSubfield; N], ) -> &[Self; N]
fn cast_ext_arr_mut<const N: usize>( packed: &mut [Self::PackedSubfield; N], ) -> &mut [Self; N]
Source§impl PackedField for ByteSlicedAES32x16b
impl PackedField for ByteSlicedAES32x16b
Source§const LOG_WIDTH: usize = 5usize
const LOG_WIDTH: usize = 5usize
Base-2 logarithm of the number of field elements packed into one packed element.
type Scalar = AESTowerField16b
Source§unsafe fn get_unchecked(&self, i: usize) -> Self::Scalar
unsafe fn get_unchecked(&self, i: usize) -> Self::Scalar
Get the scalar at a given index without bounds checking. Read more
Source§unsafe fn set_unchecked(&mut self, i: usize, scalar: Self::Scalar)
unsafe fn set_unchecked(&mut self, i: usize, scalar: Self::Scalar)
Set the scalar at a given index without bounds checking. Read more
fn random(rng: impl RngCore) -> Self
fn broadcast(scalar: Self::Scalar) -> Self
Source§fn from_fn(f: impl FnMut(usize) -> Self::Scalar) -> Self
fn from_fn(f: impl FnMut(usize) -> Self::Scalar) -> Self
Construct a packed field element from a function that returns scalar values by index.
Source§fn invert_or_zero(self) -> Self
fn invert_or_zero(self) -> Self
Returns the packed inverse values or zeroes at indices where
self
is zero.Source§fn interleave(self, other: Self, log_block_len: usize) -> (Self, Self)
fn interleave(self, other: Self, log_block_len: usize) -> (Self, Self)
Interleaves blocks of this packed vector with another packed vector. Read more
Source§fn unzip(self, other: Self, log_block_len: usize) -> (Self, Self)
fn unzip(self, other: Self, log_block_len: usize) -> (Self, Self)
Unzips interleaved blocks of this packed vector with another packed vector. Read more
Source§fn get_checked(&self, i: usize) -> Result<Self::Scalar, Error>
fn get_checked(&self, i: usize) -> Result<Self::Scalar, Error>
Get the scalar at a given index.
Source§fn set_checked(&mut self, i: usize, scalar: Self::Scalar) -> Result<(), Error>
fn set_checked(&mut self, i: usize, scalar: Self::Scalar) -> Result<(), Error>
Set the scalar at a given index.
fn into_iter(self) -> impl Iterator<Item = Self::Scalar> + Send + Clone
fn iter(&self) -> impl Iterator<Item = Self::Scalar> + Send + Clone + '_
fn iter_slice( slice: &[Self], ) -> impl Iterator<Item = Self::Scalar> + Send + Clone + '_
fn zero() -> Self
fn one() -> Self
Source§fn set_single(scalar: Self::Scalar) -> Self
fn set_single(scalar: Self::Scalar) -> Self
Initialize zero position with
scalar
, set other elements to zero.Source§fn try_from_fn<E>(
f: impl FnMut(usize) -> Result<Self::Scalar, E>,
) -> Result<Self, E>
fn try_from_fn<E>( f: impl FnMut(usize) -> Result<Self::Scalar, E>, ) -> Result<Self, E>
Creates a packed field from a fallible function applied to each index.
Source§fn from_scalars(values: impl IntoIterator<Item = Self::Scalar>) -> Self
fn from_scalars(values: impl IntoIterator<Item = Self::Scalar>) -> Self
Construct a packed field element from a sequence of scalars. Read more
Source§fn spread(self, log_block_len: usize, block_idx: usize) -> Self
fn spread(self, log_block_len: usize, block_idx: usize) -> Self
Spread takes a block of elements within a packed field and repeats them to the full packing
width. Read more
Source§unsafe fn spread_unchecked(self, log_block_len: usize, block_idx: usize) -> Self
unsafe fn spread_unchecked(self, log_block_len: usize, block_idx: usize) -> Self
Unsafe version of
Self::spread
. Read moreSource§impl PackedTransformationFactory<ByteSlicedAES32x16b> for ByteSlicedAES32x16b
impl PackedTransformationFactory<ByteSlicedAES32x16b> for ByteSlicedAES32x16b
type PackedTransformation<Data: AsRef<[<ByteSlicedAES32x16b as PackedField>::Scalar]> + Sync> = TransformationWrapperNxN<<ScaledPackedField<PackedPrimitiveType<M128, AESTowerField8b>, 2> as PackedTransformationFactory<ScaledPackedField<PackedPrimitiveType<M128, AESTowerField8b>, 2>>>::PackedTransformation<[AESTowerField8b; 8]>, {<$tower_level as TowerLevel>::WIDTH}>
fn make_packed_transformation<Data: AsRef<[<ByteSlicedAES32x16b as PackedField>::Scalar]> + Sync>( transformation: FieldLinearTransformation<<ByteSlicedAES32x16b as PackedField>::Scalar, Data>, ) -> Self::PackedTransformation<Data>
Source§impl PartialEq for ByteSlicedAES32x16b
impl PartialEq for ByteSlicedAES32x16b
Source§impl Product for ByteSlicedAES32x16b
impl Product for ByteSlicedAES32x16b
Source§impl Sub<AESTowerField16b> for ByteSlicedAES32x16b
impl Sub<AESTowerField16b> for ByteSlicedAES32x16b
Source§type Output = ByteSlicedAES32x16b
type Output = ByteSlicedAES32x16b
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: AESTowerField16b) -> ByteSlicedAES32x16b
fn sub(self, rhs: AESTowerField16b) -> ByteSlicedAES32x16b
Performs the
-
operation. Read moreSource§impl Sub for ByteSlicedAES32x16b
impl Sub for ByteSlicedAES32x16b
Source§impl SubAssign<AESTowerField16b> for ByteSlicedAES32x16b
impl SubAssign<AESTowerField16b> for ByteSlicedAES32x16b
Source§fn sub_assign(&mut self, rhs: AESTowerField16b)
fn sub_assign(&mut self, rhs: AESTowerField16b)
Performs the
-=
operation. Read moreSource§impl SubAssign for ByteSlicedAES32x16b
impl SubAssign for ByteSlicedAES32x16b
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
Performs the
-=
operation. Read moreSource§impl Sum for ByteSlicedAES32x16b
impl Sum for ByteSlicedAES32x16b
Source§impl<Inner: Transformation<PackedAESBinaryField32x8b, PackedAESBinaryField32x8b>> Transformation<ByteSlicedAES32x16b, ByteSlicedAES32x16b> for TransformationWrapperNxN<Inner, { <TowerLevel2 as TowerLevel>::WIDTH }>
impl<Inner: Transformation<PackedAESBinaryField32x8b, PackedAESBinaryField32x8b>> Transformation<ByteSlicedAES32x16b, ByteSlicedAES32x16b> for TransformationWrapperNxN<Inner, { <TowerLevel2 as TowerLevel>::WIDTH }>
fn transform(&self, data: &ByteSlicedAES32x16b) -> ByteSlicedAES32x16b
impl Copy for ByteSlicedAES32x16b
impl Eq for ByteSlicedAES32x16b
impl Pod for ByteSlicedAES32x16b
impl StructuralPartialEq for ByteSlicedAES32x16b
Auto Trait Implementations§
impl Freeze for ByteSlicedAES32x16b
impl RefUnwindSafe for ByteSlicedAES32x16b
impl Send for ByteSlicedAES32x16b
impl Sync for ByteSlicedAES32x16b
impl Unpin for ByteSlicedAES32x16b
impl UnwindSafe for ByteSlicedAES32x16b
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
impl<T> CheckedBitPattern for Twhere
T: AnyBitPattern,
§type Bits = T
type Bits = T
Self
must have the same layout as the specified Bits
except for
the possible invalid bit patterns being checked during
is_valid_bit_pattern
.§fn is_valid_bit_pattern(_bits: &T) -> bool
fn is_valid_bit_pattern(_bits: &T) -> bool
If this function returns true, then it must be valid to reinterpret
bits
as &Self
.Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more