binius_field::underlier

Trait IterationStrategy

Source
pub trait IterationStrategy<T, U> {
    // Required methods
    fn ref_iter(value: &U) -> impl Iterator<Item = T> + Send + '_;
    fn value_iter(value: U) -> impl Iterator<Item = T> + Send;
    fn slice_iter(slice: &[U]) -> impl Iterator<Item = T> + Send + '_;
}
Expand description

The iteration strategy for the given underlier type ‘U’ that is treated as a packed collection of ’T’s.

Required Methods§

Source

fn ref_iter(value: &U) -> impl Iterator<Item = T> + Send + '_

Iterate over the subvalues of the given reference.

Source

fn value_iter(value: U) -> impl Iterator<Item = T> + Send

Iterate over the subvalues of the given value.

Source

fn slice_iter(slice: &[U]) -> impl Iterator<Item = T> + Send + '_

Iterate over the subvalues of the given slice.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl IterationStrategy<u8, u8> for IterationMethods<u8, u8>

Source§

impl IterationStrategy<u8, u16> for IterationMethods<u8, u16>

Source§

impl IterationStrategy<u8, u32> for IterationMethods<u8, u32>

Source§

impl IterationStrategy<u8, u64> for IterationMethods<u8, u64>

Source§

impl IterationStrategy<u8, u128> for IterationMethods<u8, u128>

Source§

impl IterationStrategy<u16, u16> for IterationMethods<u16, u16>

Source§

impl IterationStrategy<u16, u32> for IterationMethods<u16, u32>

Source§

impl IterationStrategy<u16, u64> for IterationMethods<u16, u64>

Source§

impl IterationStrategy<u16, u128> for IterationMethods<u16, u128>

Source§

impl IterationStrategy<u32, u32> for IterationMethods<u32, u32>

Source§

impl IterationStrategy<u32, u64> for IterationMethods<u32, u64>

Source§

impl IterationStrategy<u32, u128> for IterationMethods<u32, u128>

Source§

impl IterationStrategy<u64, u64> for IterationMethods<u64, u64>

Source§

impl IterationStrategy<u64, u128> for IterationMethods<u64, u128>

Source§

impl IterationStrategy<u128, u128> for IterationMethods<u128, u128>

Source§

impl IterationStrategy<SmallU<1>, u8> for IterationMethods<U1, u8>

Source§

impl IterationStrategy<SmallU<1>, u16> for IterationMethods<U1, u16>

Source§

impl IterationStrategy<SmallU<1>, u32> for IterationMethods<U1, u32>

Source§

impl IterationStrategy<SmallU<1>, u64> for IterationMethods<U1, u64>

Source§

impl IterationStrategy<SmallU<1>, u128> for IterationMethods<U1, u128>

Source§

impl IterationStrategy<SmallU<1>, SmallU<1>> for IterationMethods<U1, U1>

Source§

impl IterationStrategy<SmallU<1>, SmallU<2>> for IterationMethods<U1, U2>

Source§

impl IterationStrategy<SmallU<1>, SmallU<4>> for IterationMethods<U1, U4>

Source§

impl IterationStrategy<SmallU<2>, u8> for IterationMethods<U2, u8>

Source§

impl IterationStrategy<SmallU<2>, u16> for IterationMethods<U2, u16>

Source§

impl IterationStrategy<SmallU<2>, u32> for IterationMethods<U2, u32>

Source§

impl IterationStrategy<SmallU<2>, u64> for IterationMethods<U2, u64>

Source§

impl IterationStrategy<SmallU<2>, u128> for IterationMethods<U2, u128>

Source§

impl IterationStrategy<SmallU<2>, SmallU<2>> for IterationMethods<U2, U2>

Source§

impl IterationStrategy<SmallU<2>, SmallU<4>> for IterationMethods<U2, U4>

Source§

impl IterationStrategy<SmallU<4>, u8> for IterationMethods<U4, u8>

Source§

impl IterationStrategy<SmallU<4>, u16> for IterationMethods<U4, u16>

Source§

impl IterationStrategy<SmallU<4>, u32> for IterationMethods<U4, u32>

Source§

impl IterationStrategy<SmallU<4>, u64> for IterationMethods<U4, u64>

Source§

impl IterationStrategy<SmallU<4>, u128> for IterationMethods<U4, u128>

Source§

impl IterationStrategy<SmallU<4>, SmallU<4>> for IterationMethods<U4, U4>

Source§

impl<T, U> IterationStrategy<T, U> for FallbackStrategy

Source§

impl<U> IterationStrategy<SmallU<1>, U> for BitIterationStrategy

Source§

impl<U: UnderlierType + Divisible<T>, T: UnderlierType> IterationStrategy<T, U> for DivisibleStrategy