[][src]Struct labrador_ldpc::codes::ParityIter

pub struct ParityIter { /* fields omitted */ }

Iterator over a code's parity check matrix.

Iterating gives values (check, variable) which are the indices of an edge on the parity check matrix, where check is the row and variable is the column.

ParityIter is obtained from LDPCCode::iter_paritychecks().

Trait Implementations

impl Iterator for ParityIter[src]

type Item = (usize, usize)

The type of the elements being iterated over.

pub fn next(&mut self) -> Option<(usize, usize)>[src]

Compute the next parity edge.

This function really really wants to be inlined for performance. It does almost no computation but returns thousands of times, so the overhead of a function call completely dominates its runtime if not inlined.

Auto Trait Implementations

impl Send for ParityIter

impl Sync for ParityIter

impl Unpin for ParityIter

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<I> IntoIterator for I where
    I: Iterator
[src]

type Item = <I as Iterator>::Item

The type of the elements being iterated over.

type IntoIter = I

Which kind of iterator are we turning this into?

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.