pub struct GhashSq256b(/* private fields */);Implementations§
Trait Implementations§
Source§impl Add<&GhashSq256b> for GhashSq256b
impl Add<&GhashSq256b> for GhashSq256b
Source§impl Add<BinaryField128bGhash> for GhashSq256b
impl Add<BinaryField128bGhash> for GhashSq256b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
+ operator.Source§impl Add<BinaryField1b> for GhashSq256b
impl Add<BinaryField1b> for GhashSq256b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
+ operator.Source§impl Add<GhashSq256b> for BinaryField128bGhash
impl Add<GhashSq256b> for BinaryField128bGhash
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
+ operator.Source§impl Add<GhashSq256b> for BinaryField1b
impl Add<GhashSq256b> for BinaryField1b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
+ operator.Source§impl Add for GhashSq256b
impl Add for GhashSq256b
Source§impl AddAssign<&GhashSq256b> for GhashSq256b
impl AddAssign<&GhashSq256b> for GhashSq256b
Source§fn add_assign(&mut self, rhs: &Self)
fn add_assign(&mut self, rhs: &Self)
Performs the
+= operation. Read moreSource§impl AddAssign<BinaryField128bGhash> for GhashSq256b
impl AddAssign<BinaryField128bGhash> for GhashSq256b
Source§fn add_assign(&mut self, rhs: BinaryField128bGhash)
fn add_assign(&mut self, rhs: BinaryField128bGhash)
Performs the
+= operation. Read moreSource§impl AddAssign<BinaryField1b> for GhashSq256b
impl AddAssign<BinaryField1b> for GhashSq256b
Source§fn add_assign(&mut self, rhs: BinaryField1b)
fn add_assign(&mut self, rhs: BinaryField1b)
Performs the
+= operation. Read moreSource§impl AddAssign for GhashSq256b
impl AddAssign for GhashSq256b
Source§fn add_assign(&mut self, rhs: Self)
fn add_assign(&mut self, rhs: Self)
Performs the
+= operation. Read moreSource§impl BinaryField for GhashSq256b
impl BinaryField for GhashSq256b
Source§impl Clone for GhashSq256b
impl Clone for GhashSq256b
Source§fn clone(&self) -> GhashSq256b
fn clone(&self) -> GhashSq256b
Returns a duplicate 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 GhashSq256b
impl Debug for GhashSq256b
Source§impl Default for GhashSq256b
impl Default for GhashSq256b
Source§fn default() -> GhashSq256b
fn default() -> GhashSq256b
Returns the “default value” for a type. Read more
Source§impl DeserializeBytes for GhashSq256b
impl DeserializeBytes for GhashSq256b
fn deserialize(read_buf: impl Buf) -> Result<Self, SerializationError>where
Self: Sized,
Source§impl Display for GhashSq256b
impl Display for GhashSq256b
Source§impl Distribution<GhashSq256b> for StandardUniform
impl Distribution<GhashSq256b> for StandardUniform
Source§fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> GhashSq256b
fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> GhashSq256b
Generate a random value of
T, using rng as the source of randomness.§fn sample_iter<R>(self, rng: R) -> Iter<Self, R, T>where
R: Rng,
Self: Sized,
fn sample_iter<R>(self, rng: R) -> Iter<Self, R, T>where
R: Rng,
Self: Sized,
Create an iterator that generates random values of
T, using rng as
the source of randomness. Read moreSource§impl Divisible<GhashSq256b> for GhashSq256b
impl Divisible<GhashSq256b> for GhashSq256b
Source§fn value_iter(
value: Self,
) -> impl ExactSizeIterator<Item = GhashSq256b> + Send + Clone
fn value_iter( value: Self, ) -> impl ExactSizeIterator<Item = GhashSq256b> + Send + Clone
Returns an iterator over subdivisions of this underlier value, ordered from LSB to MSB.
Source§fn ref_iter(
value: &Self,
) -> impl ExactSizeIterator<Item = GhashSq256b> + Send + Clone + '_
fn ref_iter( value: &Self, ) -> impl ExactSizeIterator<Item = GhashSq256b> + Send + Clone + '_
Returns an iterator over subdivisions of this underlier reference, ordered from LSB to MSB.
Source§fn slice_iter(
slice: &[Self],
) -> impl ExactSizeIterator<Item = GhashSq256b> + Send + Clone + '_
fn slice_iter( slice: &[Self], ) -> impl ExactSizeIterator<Item = GhashSq256b> + Send + Clone + '_
Returns an iterator over subdivisions of a slice of underliers, ordered from LSB to MSB.
Source§unsafe fn get_unchecked(&self, _index: usize) -> GhashSq256b
unsafe fn get_unchecked(&self, _index: usize) -> GhashSq256b
Get element at index (LSB-first ordering) without bounds checking. Read more
Source§unsafe fn set_unchecked(&mut self, _index: usize, val: GhashSq256b)
unsafe fn set_unchecked(&mut self, _index: usize, val: GhashSq256b)
Set element at index (LSB-first ordering) in place, without bounds checking. Read more
Source§fn broadcast(val: GhashSq256b) -> Self
fn broadcast(val: GhashSq256b) -> Self
Create a value with
val broadcast to all N positions.Source§impl ExtensionField<BinaryField128bGhash> for GhashSq256b
impl ExtensionField<BinaryField128bGhash> for GhashSq256b
Source§const LOG_DEGREE: usize = 1
const LOG_DEGREE: usize = 1
Base-2 logarithm of the extension degree.
Source§fn from_bases_sparse(
base_elems: impl IntoIterator<Item = BinaryField128bGhash>,
log_stride: usize,
) -> Self
fn from_bases_sparse( base_elems: impl IntoIterator<Item = BinaryField128bGhash>, log_stride: usize, ) -> Self
A specialized version of
from_bases which assumes that only base field
elements with indices dividing 2^log_stride can be nonzero. Read moreSource§fn iter_bases(&self) -> impl Iterator<Item = BinaryField128bGhash>
fn iter_bases(&self) -> impl Iterator<Item = BinaryField128bGhash>
Iterator over base field elements.
Source§fn into_iter_bases(self) -> impl Iterator<Item = BinaryField128bGhash>
fn into_iter_bases(self) -> impl Iterator<Item = BinaryField128bGhash>
Convert into an iterator over base field elements.
Source§unsafe fn get_base_unchecked(&self, i: usize) -> BinaryField128bGhash
unsafe fn get_base_unchecked(&self, i: usize) -> BinaryField128bGhash
Returns the i-th base field element without bounds checking. Read more
Source§fn square_transpose(values: &mut [Self])
fn square_transpose(values: &mut [Self])
Transpose square block of subfield elements within
values in place. Read moreSource§fn from_bases(base_elems: impl IntoIterator<Item = F>) -> Self
fn from_bases(base_elems: impl IntoIterator<Item = F>) -> Self
Create an extension field element from a slice of base field elements in order
consistent with
basis(i) return values.
Potentially faster than taking an inner product with a vector of basis elements. Read moreSource§impl ExtensionField<BinaryField1b> for GhashSq256b
impl ExtensionField<BinaryField1b> for GhashSq256b
Source§const LOG_DEGREE: usize = 8
const LOG_DEGREE: usize = 8
Base-2 logarithm of the extension degree.
Source§fn from_bases_sparse(
base_elems: impl IntoIterator<Item = BinaryField1b>,
log_stride: usize,
) -> Self
fn from_bases_sparse( base_elems: impl IntoIterator<Item = BinaryField1b>, log_stride: usize, ) -> Self
A specialized version of
from_bases which assumes that only base field
elements with indices dividing 2^log_stride can be nonzero. Read moreSource§fn iter_bases(&self) -> impl Iterator<Item = BinaryField1b>
fn iter_bases(&self) -> impl Iterator<Item = BinaryField1b>
Iterator over base field elements.
Source§fn into_iter_bases(self) -> impl Iterator<Item = BinaryField1b>
fn into_iter_bases(self) -> impl Iterator<Item = BinaryField1b>
Convert into an iterator over base field elements.
Source§unsafe fn get_base_unchecked(&self, i: usize) -> BinaryField1b
unsafe fn get_base_unchecked(&self, i: usize) -> BinaryField1b
Returns the i-th base field element without bounds checking. Read more
Source§fn square_transpose(values: &mut [Self])
fn square_transpose(values: &mut [Self])
Transpose square block of subfield elements within
values in place. Read moreSource§fn from_bases(base_elems: impl IntoIterator<Item = F>) -> Self
fn from_bases(base_elems: impl IntoIterator<Item = F>) -> Self
Create an extension field element from a slice of base field elements in order
consistent with
basis(i) return values.
Potentially faster than taking an inner product with a vector of basis elements. Read moreSource§impl Field for GhashSq256b
impl Field for GhashSq256b
Source§const CHARACTERISTIC: usize = 2
const CHARACTERISTIC: usize = 2
Source§const ORDER_EXPONENT: usize = <M256 as crate::underlier::UnderlierType>::BITS
const ORDER_EXPONENT: usize = <M256 as crate::underlier::UnderlierType>::BITS
The exponent
k such that the field order equals CHARACTERISTIC^k.Source§const MULTIPLICATIVE_GENERATOR: GhashSq256b
const MULTIPLICATIVE_GENERATOR: GhashSq256b
Fixed generator of the multiplicative group.
Source§impl FixedSizeSerializeBytes for GhashSq256b
impl FixedSizeSerializeBytes for GhashSq256b
Source§impl From<BinaryField128bGhash> for GhashSq256b
impl From<BinaryField128bGhash> for GhashSq256b
Source§fn from(elem: BinaryField128bGhash) -> Self
fn from(elem: BinaryField128bGhash) -> Self
Converts to this type from the input type.
Source§impl From<BinaryField1b> for GhashSq256b
impl From<BinaryField1b> for GhashSq256b
Source§fn from(elem: BinaryField1b) -> Self
fn from(elem: BinaryField1b) -> Self
Converts to this type from the input type.
Source§impl From<GhashSq256b> for M256
impl From<GhashSq256b> for M256
Source§fn from(val: GhashSq256b) -> Self
fn from(val: GhashSq256b) -> Self
Converts to this type from the input type.
Source§impl Hash for GhashSq256b
impl Hash for GhashSq256b
Source§impl InvertOrZero for GhashSq256b
impl InvertOrZero for GhashSq256b
Source§fn invert_or_zero(self) -> Self
fn invert_or_zero(self) -> Self
Returns the inverted value or zero in case when
self is zeroSource§impl Maskable<GhashSq256b> for GhashSq256b
impl Maskable<GhashSq256b> for GhashSq256b
Source§impl Mul<&GhashSq256b> for GhashSq256b
impl Mul<&GhashSq256b> for GhashSq256b
Source§impl Mul<BinaryField128bGhash> for GhashSq256b
impl Mul<BinaryField128bGhash> for GhashSq256b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
* operator.Source§impl Mul<BinaryField1b> for GhashSq256b
impl Mul<BinaryField1b> for GhashSq256b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
* operator.Source§impl Mul<GhashSq256b> for BinaryField128bGhash
impl Mul<GhashSq256b> for BinaryField128bGhash
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
* operator.Source§impl Mul<GhashSq256b> for BinaryField1b
impl Mul<GhashSq256b> for BinaryField1b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
* operator.Source§impl Mul for GhashSq256b
impl Mul for GhashSq256b
Source§impl MulAssign<&GhashSq256b> for GhashSq256b
impl MulAssign<&GhashSq256b> for GhashSq256b
Source§fn mul_assign(&mut self, rhs: &Self)
fn mul_assign(&mut self, rhs: &Self)
Performs the
*= operation. Read moreSource§impl MulAssign<BinaryField128bGhash> for GhashSq256b
impl MulAssign<BinaryField128bGhash> for GhashSq256b
Source§fn mul_assign(&mut self, rhs: BinaryField128bGhash)
fn mul_assign(&mut self, rhs: BinaryField128bGhash)
Performs the
*= operation. Read moreSource§impl MulAssign<BinaryField1b> for GhashSq256b
impl MulAssign<BinaryField1b> for GhashSq256b
Source§fn mul_assign(&mut self, rhs: BinaryField1b)
fn mul_assign(&mut self, rhs: BinaryField1b)
Performs the
*= operation. Read moreSource§impl MulAssign for GhashSq256b
impl MulAssign for GhashSq256b
Source§fn mul_assign(&mut self, rhs: Self)
fn mul_assign(&mut self, rhs: Self)
Performs the
*= operation. Read moreSource§impl Neg for GhashSq256b
impl Neg for GhashSq256b
Source§impl Ord for GhashSq256b
impl Ord for GhashSq256b
Source§fn cmp(&self, other: &GhashSq256b) -> Ordering
fn cmp(&self, other: &GhashSq256b) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for GhashSq256b
impl PartialEq for GhashSq256b
Source§impl PartialOrd for GhashSq256b
impl PartialOrd for GhashSq256b
Source§impl<'a> Product<&'a GhashSq256b> for GhashSq256b
impl<'a> Product<&'a GhashSq256b> for GhashSq256b
Source§impl Product for GhashSq256b
impl Product for GhashSq256b
Source§impl SerializeBytes for GhashSq256b
impl SerializeBytes for GhashSq256b
Source§impl Square for GhashSq256b
impl Square for GhashSq256b
Source§impl Sub<&GhashSq256b> for GhashSq256b
impl Sub<&GhashSq256b> for GhashSq256b
Source§impl Sub<BinaryField128bGhash> for GhashSq256b
impl Sub<BinaryField128bGhash> for GhashSq256b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
- operator.Source§impl Sub<BinaryField1b> for GhashSq256b
impl Sub<BinaryField1b> for GhashSq256b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
- operator.Source§impl Sub<GhashSq256b> for BinaryField128bGhash
impl Sub<GhashSq256b> for BinaryField128bGhash
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
- operator.Source§impl Sub<GhashSq256b> for BinaryField1b
impl Sub<GhashSq256b> for BinaryField1b
Source§type Output = GhashSq256b
type Output = GhashSq256b
The resulting type after applying the
- operator.Source§impl Sub for GhashSq256b
impl Sub for GhashSq256b
Source§impl SubAssign<&GhashSq256b> for GhashSq256b
impl SubAssign<&GhashSq256b> for GhashSq256b
Source§fn sub_assign(&mut self, rhs: &Self)
fn sub_assign(&mut self, rhs: &Self)
Performs the
-= operation. Read moreSource§impl SubAssign<BinaryField128bGhash> for GhashSq256b
impl SubAssign<BinaryField128bGhash> for GhashSq256b
Source§fn sub_assign(&mut self, rhs: BinaryField128bGhash)
fn sub_assign(&mut self, rhs: BinaryField128bGhash)
Performs the
-= operation. Read moreSource§impl SubAssign<BinaryField1b> for GhashSq256b
impl SubAssign<BinaryField1b> for GhashSq256b
Source§fn sub_assign(&mut self, rhs: BinaryField1b)
fn sub_assign(&mut self, rhs: BinaryField1b)
Performs the
-= operation. Read moreSource§impl SubAssign for GhashSq256b
impl SubAssign for GhashSq256b
Source§fn sub_assign(&mut self, rhs: Self)
fn sub_assign(&mut self, rhs: Self)
Performs the
-= operation. Read moreSource§impl<'a> Sum<&'a GhashSq256b> for GhashSq256b
impl<'a> Sum<&'a GhashSq256b> for GhashSq256b
Source§impl Sum for GhashSq256b
impl Sum for GhashSq256b
Source§impl TowerField for GhashSq256b
impl TowerField for GhashSq256b
Source§fn min_tower_level(self) -> usize
fn min_tower_level(self) -> usize
Returns the smallest valid
TOWER_LEVEL in the tower that can fit the same value. Read moreSource§const TOWER_LEVEL: usize = _
const TOWER_LEVEL: usize = _
The level $\iota$ in the tower, where this field is isomorphic to $T_{\iota}$.
Source§impl TryFrom<GhashSq256b> for BinaryField128bGhash
impl TryFrom<GhashSq256b> for BinaryField128bGhash
Source§impl TryFrom<GhashSq256b> for BinaryField1b
impl TryFrom<GhashSq256b> for BinaryField1b
Source§impl WideMul for GhashSq256b
impl WideMul for GhashSq256b
Source§impl WithUnderlier for GhashSq256b
impl WithUnderlier for GhashSq256b
Source§fn to_underlier(self) -> Self::Underlier
fn to_underlier(self) -> Self::Underlier
Convert value to underlier.
fn to_underlier_ref(&self) -> &Self::Underlier
fn to_underlier_ref_mut(&mut self) -> &mut Self::Underlier
fn to_underliers_ref(val: &[Self]) -> &[Self::Underlier]
fn to_underliers_ref_mut(val: &mut [Self]) -> &mut [Self::Underlier]
fn to_underliers_arr<const N: usize>(val: [Self; N]) -> [Self::Underlier; N]
fn to_underliers_arr_ref<const N: usize>( val: &[Self; N], ) -> &[Self::Underlier; N]
fn to_underliers_arr_ref_mut<const N: usize>( val: &mut [Self; N], ) -> &mut [Self::Underlier; N]
fn from_underlier(val: Self::Underlier) -> Self
fn from_underlier_ref(val: &Self::Underlier) -> &Self
fn from_underlier_ref_mut(val: &mut Self::Underlier) -> &mut Self
fn from_underliers_ref(val: &[Self::Underlier]) -> &[Self]
fn from_underliers_ref_mut(val: &mut [Self::Underlier]) -> &mut [Self]
fn from_underliers_arr<const N: usize>(val: [Self::Underlier; N]) -> [Self; N]
fn from_underliers_arr_ref<const N: usize>( val: &[Self::Underlier; N], ) -> &[Self; N]
fn from_underliers_arr_ref_mut<const N: usize>( val: &mut [Self::Underlier; N], ) -> &mut [Self; N]
fn mutate_underlier( self, f: impl FnOnce(Self::Underlier) -> Self::Underlier, ) -> Self
impl Copy for GhashSq256b
impl Eq for GhashSq256b
impl Pod for GhashSq256b
impl StructuralPartialEq for GhashSq256b
Auto Trait Implementations§
impl Freeze for GhashSq256b
impl RefUnwindSafe for GhashSq256b
impl Send for GhashSq256b
impl Sync for GhashSq256b
impl Unpin for GhashSq256b
impl UnsafeUnpin for GhashSq256b
impl UnwindSafe for GhashSq256b
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<F> ExtensionField<F> for Fwhere
F: Field,
impl<F> ExtensionField<F> for Fwhere
F: Field,
Source§const LOG_DEGREE: usize = const LOG_DEGREE: usize = 0;
const LOG_DEGREE: usize = const LOG_DEGREE: usize = 0;
Base-2 logarithm of the extension degree.
Source§fn from_bases_sparse(
base_elems: impl IntoIterator<Item = F>,
log_stride: usize,
) -> F
fn from_bases_sparse( base_elems: impl IntoIterator<Item = F>, log_stride: usize, ) -> F
A specialized version of
from_bases which assumes that only base field
elements with indices dividing 2^log_stride can be nonzero. Read moreSource§fn iter_bases(&self) -> impl Iterator<Item = F>
fn iter_bases(&self) -> impl Iterator<Item = F>
Iterator over base field elements.
Source§fn into_iter_bases(self) -> impl Iterator<Item = F>
fn into_iter_bases(self) -> impl Iterator<Item = F>
Convert into an iterator over base field elements.
Source§unsafe fn get_base_unchecked(&self, i: usize) -> F
unsafe fn get_base_unchecked(&self, i: usize) -> F
Returns the i-th base field element without bounds checking. Read more
Source§fn square_transpose(values: &mut [F])
fn square_transpose(values: &mut [F])
Transpose square block of subfield elements within
values in place. Read moreSource§fn from_bases(base_elems: impl IntoIterator<Item = F>) -> Self
fn from_bases(base_elems: impl IntoIterator<Item = F>) -> Self
Create an extension field element from a slice of base field elements in order
consistent with
basis(i) return values.
Potentially faster than taking an inner product with a vector of basis elements. Read moreSource§impl<F> FieldOps for Fwhere
F: Field,
impl<F> FieldOps for Fwhere
F: Field,
type Scalar = F
Source§fn square_transpose<FSub>(elems: &mut [F])where
FSub: Field,
F: ExtensionField<FSub>,
fn square_transpose<FSub>(elems: &mut [F])where
FSub: Field,
F: ExtensionField<FSub>,
Transpose the subfield elements in a slice of field elements. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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 moreSource§impl<PT, FS> PackedExtension<FS> for PTwhere
FS: BinaryField,
PT: PackedField + WithUnderlier,
<PT as FieldOps>::Scalar: ExtensionField<FS>,
PackedPrimitiveType<<PT as WithUnderlier>::Underlier, FS>: PackedField<Scalar = FS>,
impl<PT, FS> PackedExtension<FS> for PTwhere
FS: BinaryField,
PT: PackedField + WithUnderlier,
<PT as FieldOps>::Scalar: ExtensionField<FS>,
PackedPrimitiveType<<PT as WithUnderlier>::Underlier, FS>: PackedField<Scalar = FS>,
type PackedSubfield = PackedPrimitiveType<<PT as WithUnderlier>::Underlier, FS>
fn cast_bases(packed: &[PT]) -> &[<PT as PackedExtension<FS>>::PackedSubfield]
fn cast_bases_mut( packed: &mut [PT], ) -> &mut [<PT as PackedExtension<FS>>::PackedSubfield]
fn cast_exts(base: &[<PT as PackedExtension<FS>>::PackedSubfield]) -> &[PT]
fn cast_exts_mut( base: &mut [<PT as PackedExtension<FS>>::PackedSubfield], ) -> &mut [PT]
fn cast_base(self) -> <PT as PackedExtension<FS>>::PackedSubfield
fn cast_base_ref(&self) -> &<PT as PackedExtension<FS>>::PackedSubfield
fn cast_base_mut(&mut self) -> &mut <PT as PackedExtension<FS>>::PackedSubfield
fn cast_ext(base: <PT as PackedExtension<FS>>::PackedSubfield) -> PT
fn cast_ext_ref(base: &<PT as PackedExtension<FS>>::PackedSubfield) -> &PT
fn cast_ext_mut( base: &mut <PT as PackedExtension<FS>>::PackedSubfield, ) -> &mut PT
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<F> PackedField for Fwhere
F: Field,
impl<F> PackedField for Fwhere
F: Field,
fn iter(&self) -> impl Iterator<Item = <F as FieldOps>::Scalar> + Send + Clone
fn into_iter( self, ) -> impl Iterator<Item = <F as FieldOps>::Scalar> + Send + Clone
fn iter_slice( slice: &[F], ) -> impl Iterator<Item = <F as FieldOps>::Scalar> + Send + Clone
Source§fn interleave(self, _other: F, _log_block_len: usize) -> (F, F)
fn interleave(self, _other: F, _log_block_len: usize) -> (F, F)
Interleaves blocks of this packed vector with another packed vector. Read more
Source§fn unzip(self, _other: F, _log_block_len: usize) -> (F, F)
fn unzip(self, _other: F, _log_block_len: usize) -> (F, F)
Unzips interleaved blocks of this packed vector with another packed vector. Read more
Source§fn from_fn(f: impl FnMut(usize) -> <F as FieldOps>::Scalar) -> F
fn from_fn(f: impl FnMut(usize) -> <F as FieldOps>::Scalar) -> F
Construct a packed field element from a function that returns scalar values by index.
Source§unsafe fn spread_unchecked(self, _log_block_len: usize, _block_idx: usize) -> F
unsafe fn spread_unchecked(self, _log_block_len: usize, _block_idx: usize) -> F
Unsafe version of
Self::spread. Read moreSource§const LOG_WIDTH: usize = _
const LOG_WIDTH: usize = _
Base-2 logarithm of the number of field elements packed into one packed element. Read more
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
§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<PT> TaggedInvertOrZero<PairwiseStrategy> for PT
impl<PT> TaggedInvertOrZero<PairwiseStrategy> for PT
fn invert_or_zero(self) -> PT
Source§impl<PT> TaggedMul<PairwiseStrategy> for PTwhere
PT: PackedField,
impl<PT> TaggedMul<PairwiseStrategy> for PTwhere
PT: PackedField,
Source§impl<PT> TaggedSquare<PairwiseStrategy> for PT
impl<PT> TaggedSquare<PairwiseStrategy> for PT
Source§impl<T> TaggedSquare<ReuseMultiplyStrategy> for T
impl<T> TaggedSquare<ReuseMultiplyStrategy> for T
§impl<I, T> TransparentWrapperAlloc<I> for T
impl<I, T> TransparentWrapperAlloc<I> for T
§fn wrap_vec(s: Vec<Inner>) -> Vec<Self>where
Self: Sized,
fn wrap_vec(s: Vec<Inner>) -> Vec<Self>where
Self: Sized,
Convert a vec of the inner type into a vec of the wrapper type.
§fn wrap_box(s: Box<Inner>) -> Box<Self>
fn wrap_box(s: Box<Inner>) -> Box<Self>
Convert a box to the inner type into a box to the wrapper
type.
§fn wrap_rc(s: Rc<Inner>) -> Rc<Self>
fn wrap_rc(s: Rc<Inner>) -> Rc<Self>
Convert an
Rc to the inner type into an Rc to the wrapper type.§fn wrap_arc(s: Arc<Inner>) -> Arc<Self>
fn wrap_arc(s: Arc<Inner>) -> Arc<Self>
Convert an
Arc to the inner type into an Arc to the wrapper type.§fn peel_vec(s: Vec<Self>) -> Vec<Inner>where
Self: Sized,
fn peel_vec(s: Vec<Self>) -> Vec<Inner>where
Self: Sized,
Convert a vec of the wrapper type into a vec of the inner type.
§fn peel_box(s: Box<Self>) -> Box<Inner>
fn peel_box(s: Box<Self>) -> Box<Inner>
Convert a box to the wrapper type into a box to the inner
type.