Struct FindRevIter

pub struct FindRevIter<'h, 'n> { /* private fields */ }

An iterator over non-overlapping substring matches in reverse.

Matches are reported by the byte offset at which they begin.

'h is the lifetime of the haystack while 'n is the lifetime of the needle.

Implementations

impl<'h, 'n> FindRevIter<'h, 'n>

fn into_owned(self) -> FindRevIter<'h, 'static>

Convert this iterator into its owned variant, such that it no longer borrows the finder and needle.

If this is already an owned iterator, then this is a no-op. Otherwise, this copies the needle.

This is only available when the std feature is enabled.

Trait Implementations

impl<'h, 'n> Clone for FindRevIter<'h, 'n>

fn clone(&self) -> FindRevIter<'h, 'n>

impl<'h, 'n> Debug for FindRevIter<'h, 'n>

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl<'h, 'n> Iterator for FindRevIter<'h, 'n>

type Item = usize;
fn next(&mut self) -> Option<usize>

Auto Trait Implementations

impl<'h, 'n> Freeze for FindRevIter<'h, 'n>

impl<'h, 'n> RefUnwindSafe for FindRevIter<'h, 'n>

impl<'h, 'n> Send for FindRevIter<'h, 'n>

impl<'h, 'n> Sync for FindRevIter<'h, 'n>

impl<'h, 'n> Unpin for FindRevIter<'h, 'n>

impl<'h, 'n> UnsafeUnpin for FindRevIter<'h, 'n>

impl<'h, 'n> UnwindSafe for FindRevIter<'h, 'n>

Blanket Implementations

impl<I> IntoIterator for FindRevIter<'h, 'n> where I: Iterator,

type Item = <I as Iterator>::Item;
type IntoIter = I;
fn into_iter(self) -> I

impl<T> Any for FindRevIter<'h, 'n> where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for FindRevIter<'h, 'n> where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for FindRevIter<'h, 'n> where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> CloneToUninit for FindRevIter<'h, 'n> where T: Clone,

unsafe fn clone_to_uninit(&self, dest: *mut u8)

impl<T> From<T> for FindRevIter<'h, 'n>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for FindRevIter<'h, 'n> where T: Clone,

type Owned = T;
fn to_owned(&self) -> T
fn clone_into(&self, target: &mut T)

impl<T, U> Into<U> for FindRevIter<'h, 'n> where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for FindRevIter<'h, 'n> where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for FindRevIter<'h, 'n> where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>