Struct Memchr

pub struct Memchr<'h> { /* private fields */ }

An iterator over all occurrences of a single byte in a haystack.

This iterator implements DoubleEndedIterator, which means it can also be used to find occurrences in reverse order.

This iterator is created by the memchr_iter or [memrchr_iter] functions. It can also be created with the Memchr::new method.

The lifetime parameter 'h refers to the lifetime of the haystack being searched.

Implementations

impl<'h> Memchr<'h>

fn new(needle1: u8, haystack: &'h [u8]) -> Memchr<'h>

Returns an iterator over all occurrences of the needle byte in the given haystack.

The iterator returned implements DoubleEndedIterator. This means it can also be used to find occurrences in reverse order.

Trait Implementations

impl<'h> Clone for Memchr<'h>

fn clone(&self) -> Self

impl<'h> Debug for Memchr<'h>

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

impl<'h> DoubleEndedIterator for Memchr<'h>

fn next_back(&mut self) -> Option<usize>

impl<'h> FusedIterator for Memchr<'h>

impl<'h> Iterator for Memchr<'h>

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

Auto Trait Implementations

impl<'h> Freeze for Memchr<'h>

impl<'h> RefUnwindSafe for Memchr<'h>

impl<'h> Send for Memchr<'h>

impl<'h> Sync for Memchr<'h>

impl<'h> Unpin for Memchr<'h>

impl<'h> UnsafeUnpin for Memchr<'h>

impl<'h> UnwindSafe for Memchr<'h>

Blanket Implementations

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

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

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

fn type_id(&self) -> TypeId

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

fn borrow(&self) -> &T

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

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

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

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

impl<T> From<T> for Memchr<'h>

fn from(t: T) -> T

Returns the argument unchanged.

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

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

impl<T, U> Into<U> for Memchr<'h> 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 Memchr<'h> where U: Into<T>,

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

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

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