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