[][src]Struct bitvec::slice::RSplit

pub struct RSplit<'a, O, T, P> where
    O: BitOrder,
    T: 'a + BitStore,
    P: FnMut(usize, &bool) -> bool
{ /* fields omitted */ }

An iterator over subslices separated by bits that match a predicate function, starting from the end of the slice.

This struct is created by the rsplit method on bit slices.

Original

slice::RSplit

API Differences

In order to allow more than one bit of information for the split decision, the predicate receives the index of each bit, as well as its value.

Trait Implementations

impl<'a, O: Clone, T: Clone, P: Clone> Clone for RSplit<'a, O, T, P> where
    O: BitOrder,
    T: 'a + BitStore,
    P: FnMut(usize, &bool) -> bool
[src]

impl<O, T, P, '_> Debug for RSplit<'_, O, T, P> where
    O: BitOrder,
    T: BitStore,
    P: FnMut(usize, &bool) -> bool
[src]

impl<'a, O, T, P> DoubleEndedIterator for RSplit<'a, O, T, P> where
    O: 'a + BitOrder,
    T: 'a + BitStore,
    P: FnMut(usize, &bool) -> bool
[src]

impl<'a, O, T, P> FusedIterator for RSplit<'a, O, T, P> where
    O: 'a + BitOrder,
    T: 'a + BitStore,
    P: FnMut(usize, &bool) -> bool
[src]

impl<'a, O, T, P> Iterator for RSplit<'a, O, T, P> where
    O: 'a + BitOrder,
    T: 'a + BitStore,
    P: FnMut(usize, &bool) -> bool
[src]

type Item = &'a BitSlice<O, T>

The type of the elements being iterated over.

Auto Trait Implementations

impl<'a, O, T, P> RefUnwindSafe for RSplit<'a, O, T, P> where
    O: RefUnwindSafe,
    P: RefUnwindSafe,
    T: RefUnwindSafe

impl<'a, O, T, P> Send for RSplit<'a, O, T, P> where
    P: Send,
    <T as BitStore>::Threadsafe: Sync

impl<'a, O, T, P> Sync for RSplit<'a, O, T, P> where
    P: Sync,
    <T as BitStore>::Threadsafe: Sync

impl<'a, O, T, P> Unpin for RSplit<'a, O, T, P> where
    P: Unpin

impl<'a, O, T, P> UnwindSafe for RSplit<'a, O, T, P> where
    O: RefUnwindSafe,
    P: UnwindSafe,
    T: RefUnwindSafe

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> Conv for T[src]

impl<T> Conv for T[src]

impl<T> FmtForward for T[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> Pipe for T where
    T: ?Sized
[src]

impl<T> Pipe for T[src]

impl<T> PipeAsRef for T[src]

impl<T> PipeBorrow for T[src]

impl<T> PipeDeref for T[src]

impl<T> PipeRef for T[src]

impl<T> Tap for T[src]

impl<T> Tap for T[src]

impl<T, U> TapAsRef<U> for T where
    U: ?Sized
[src]

impl<T, U> TapBorrow<U> for T where
    U: ?Sized
[src]

impl<T> TapDeref for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> TryConv for T[src]

impl<T> TryConv for T[src]

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.