pub struct ByteSlicedAES16x128b { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl Add<AESTowerField128b> for ByteSlicedAES16x128b
impl Add<AESTowerField128b> for ByteSlicedAES16x128b
Source§type Output = ByteSlicedAES16x128b
type Output = ByteSlicedAES16x128b
The resulting type after applying the
+
operator.Source§fn add(self, rhs: AESTowerField128b) -> ByteSlicedAES16x128b
fn add(self, rhs: AESTowerField128b) -> ByteSlicedAES16x128b
Performs the
+
operation. Read moreSource§impl Add for ByteSlicedAES16x128b
impl Add for ByteSlicedAES16x128b
Source§impl AddAssign<AESTowerField128b> for ByteSlicedAES16x128b
impl AddAssign<AESTowerField128b> for ByteSlicedAES16x128b
Source§fn add_assign(&mut self, rhs: AESTowerField128b)
fn add_assign(&mut self, rhs: AESTowerField128b)
Performs the
+=
operation. Read moreSource§impl AddAssign for ByteSlicedAES16x128b
impl AddAssign for ByteSlicedAES16x128b
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+=
operation. Read moreSource§impl Clone for ByteSlicedAES16x128b
impl Clone for ByteSlicedAES16x128b
Source§fn clone(&self) -> ByteSlicedAES16x128b
fn clone(&self) -> ByteSlicedAES16x128b
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 ByteSlicedAES16x128b
impl Debug for ByteSlicedAES16x128b
Source§impl Default for ByteSlicedAES16x128b
impl Default for ByteSlicedAES16x128b
Source§fn default() -> ByteSlicedAES16x128b
fn default() -> ByteSlicedAES16x128b
Returns the “default value” for a type. Read more
Source§impl Mul<AESTowerField128b> for ByteSlicedAES16x128b
impl Mul<AESTowerField128b> for ByteSlicedAES16x128b
Source§type Output = ByteSlicedAES16x128b
type Output = ByteSlicedAES16x128b
The resulting type after applying the
*
operator.Source§fn mul(self, rhs: AESTowerField128b) -> ByteSlicedAES16x128b
fn mul(self, rhs: AESTowerField128b) -> ByteSlicedAES16x128b
Performs the
*
operation. Read moreSource§impl Mul for ByteSlicedAES16x128b
impl Mul for ByteSlicedAES16x128b
Source§impl MulAssign<AESTowerField128b> for ByteSlicedAES16x128b
impl MulAssign<AESTowerField128b> for ByteSlicedAES16x128b
Source§fn mul_assign(&mut self, rhs: AESTowerField128b)
fn mul_assign(&mut self, rhs: AESTowerField128b)
Performs the
*=
operation. Read moreSource§impl MulAssign for ByteSlicedAES16x128b
impl MulAssign for ByteSlicedAES16x128b
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*=
operation. Read moreSource§impl PackedExtension<AESTowerField128b> for ByteSlicedAES16x128b
impl PackedExtension<AESTowerField128b> for ByteSlicedAES16x128b
type PackedSubfield = ByteSlicedAES16x128b
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 ByteSlicedAES16x128b
impl PackedExtension<AESTowerField8b> for ByteSlicedAES16x128b
type PackedSubfield = ByteSlicedAES16x16x8b
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 ByteSlicedAES16x128b
impl PackedField for ByteSlicedAES16x128b
Source§const LOG_WIDTH: usize = 4usize
const LOG_WIDTH: usize = 4usize
Base-2 logarithm of the number of field elements packed into one packed element.
type Scalar = AESTowerField128b
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<ByteSlicedAES16x128b> for ByteSlicedAES16x128b
impl PackedTransformationFactory<ByteSlicedAES16x128b> for ByteSlicedAES16x128b
type PackedTransformation<Data: AsRef<[<ByteSlicedAES16x128b as PackedField>::Scalar]> + Sync> = TransformationWrapperNxN<<PackedPrimitiveType<M128, AESTowerField8b> as PackedTransformationFactory<PackedPrimitiveType<M128, AESTowerField8b>>>::PackedTransformation<[AESTowerField8b; 8]>, {<$tower_level as TowerLevel>::WIDTH}>
fn make_packed_transformation<Data: AsRef<[<ByteSlicedAES16x128b as PackedField>::Scalar]> + Sync>( transformation: FieldLinearTransformation<<ByteSlicedAES16x128b as PackedField>::Scalar, Data>, ) -> Self::PackedTransformation<Data>
Source§impl PartialEq for ByteSlicedAES16x128b
impl PartialEq for ByteSlicedAES16x128b
Source§impl Product for ByteSlicedAES16x128b
impl Product for ByteSlicedAES16x128b
Source§impl Sub<AESTowerField128b> for ByteSlicedAES16x128b
impl Sub<AESTowerField128b> for ByteSlicedAES16x128b
Source§type Output = ByteSlicedAES16x128b
type Output = ByteSlicedAES16x128b
The resulting type after applying the
-
operator.Source§fn sub(self, rhs: AESTowerField128b) -> ByteSlicedAES16x128b
fn sub(self, rhs: AESTowerField128b) -> ByteSlicedAES16x128b
Performs the
-
operation. Read moreSource§impl Sub for ByteSlicedAES16x128b
impl Sub for ByteSlicedAES16x128b
Source§impl SubAssign<AESTowerField128b> for ByteSlicedAES16x128b
impl SubAssign<AESTowerField128b> for ByteSlicedAES16x128b
Source§fn sub_assign(&mut self, rhs: AESTowerField128b)
fn sub_assign(&mut self, rhs: AESTowerField128b)
Performs the
-=
operation. Read moreSource§impl SubAssign for ByteSlicedAES16x128b
impl SubAssign for ByteSlicedAES16x128b
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
Performs the
-=
operation. Read moreSource§impl Sum for ByteSlicedAES16x128b
impl Sum for ByteSlicedAES16x128b
Source§impl<Inner: Transformation<PackedAESBinaryField16x8b, PackedAESBinaryField16x8b>> Transformation<ByteSlicedAES16x128b, ByteSlicedAES16x128b> for TransformationWrapperNxN<Inner, { <TowerLevel16 as TowerLevel>::WIDTH }>
impl<Inner: Transformation<PackedAESBinaryField16x8b, PackedAESBinaryField16x8b>> Transformation<ByteSlicedAES16x128b, ByteSlicedAES16x128b> for TransformationWrapperNxN<Inner, { <TowerLevel16 as TowerLevel>::WIDTH }>
fn transform(&self, data: &ByteSlicedAES16x128b) -> ByteSlicedAES16x128b
impl Copy for ByteSlicedAES16x128b
impl Eq for ByteSlicedAES16x128b
impl Pod for ByteSlicedAES16x128b
impl StructuralPartialEq for ByteSlicedAES16x128b
Auto Trait Implementations§
impl Freeze for ByteSlicedAES16x128b
impl RefUnwindSafe for ByteSlicedAES16x128b
impl Send for ByteSlicedAES16x128b
impl Sync for ByteSlicedAES16x128b
impl Unpin for ByteSlicedAES16x128b
impl UnwindSafe for ByteSlicedAES16x128b
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