pub struct CharSearcher<'a> {
haystack: &'a str,
finger: usize,
finger_back: usize,
needle: char,
utf8_size: u8,
utf8_encoded: [u8; 4],
}
🔬This is a nightly-only experimental API. (
pattern
#27721)Expand description
Associated type for <char as Pattern>::Searcher<'a>
.
Fields§
§haystack: &'a str
🔬This is a nightly-only experimental API. (
§pattern
#27721)finger: usize
🔬This is a nightly-only experimental API. (
pattern
#27721)finger
is the current byte index of the forward search.
Imagine that it exists before the byte at its index, i.e.
haystack[finger]
is the first byte of the slice we must inspect during
forward searching
finger_back: usize
🔬This is a nightly-only experimental API. (
pattern
#27721)finger_back
is the current byte index of the reverse search.
Imagine that it exists after the byte at its index, i.e.
haystack[finger_back - 1] is the last byte of the slice we must inspect during
forward searching (and thus the first byte to be inspected when calling next_back()).
needle: char
🔬This is a nightly-only experimental API. (
pattern
#27721)The character being searched for
utf8_size: u8
🔬This is a nightly-only experimental API. (
pattern
#27721)The number of bytes needle
takes up when encoded in utf8.
utf8_encoded: [u8; 4]
🔬This is a nightly-only experimental API. (
pattern
#27721)A utf8 encoded copy of the needle
Implementations§
Trait Implementations§
Source§impl<'a> Clone for CharSearcher<'a>
impl<'a> Clone for CharSearcher<'a>
Source§fn clone(&self) -> CharSearcher<'a>
fn clone(&self) -> CharSearcher<'a>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'a> Debug for CharSearcher<'a>
impl<'a> Debug for CharSearcher<'a>
Source§impl<'a> ReverseSearcher<'a> for CharSearcher<'a>
impl<'a> ReverseSearcher<'a> for CharSearcher<'a>
Source§fn next_back(&mut self) -> SearchStep
fn next_back(&mut self) -> SearchStep
🔬This is a nightly-only experimental API. (
pattern
#27721)Performs the next search step starting from the back. Read more
Source§fn next_match_back(&mut self) -> Option<(usize, usize)>
fn next_match_back(&mut self) -> Option<(usize, usize)>
🔬This is a nightly-only experimental API. (
pattern
#27721)Finds the next
Match
result.
See next_back()
.Source§fn next_reject_back(&mut self) -> Option<(usize, usize)>
fn next_reject_back(&mut self) -> Option<(usize, usize)>
🔬This is a nightly-only experimental API. (
pattern
#27721)Finds the next
Reject
result.
See next_back()
.Source§impl<'a> Searcher<'a> for CharSearcher<'a>
impl<'a> Searcher<'a> for CharSearcher<'a>
Source§fn haystack(&self) -> &'a str
fn haystack(&self) -> &'a str
🔬This is a nightly-only experimental API. (
pattern
#27721)Getter for the underlying string to be searched in Read more
Source§fn next(&mut self) -> SearchStep
fn next(&mut self) -> SearchStep
🔬This is a nightly-only experimental API. (
pattern
#27721)Performs the next search step starting from the front. Read more
impl<'a> DoubleEndedSearcher<'a> for CharSearcher<'a>
Auto Trait Implementations§
impl<'a> Freeze for CharSearcher<'a>
impl<'a> RefUnwindSafe for CharSearcher<'a>
impl<'a> Send for CharSearcher<'a>
impl<'a> Sync for CharSearcher<'a>
impl<'a> Unpin for CharSearcher<'a>
impl<'a> UnsafeUnpin for CharSearcher<'a>
impl<'a> UnwindSafe for CharSearcher<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> SizedTypeProperties for T
impl<T> SizedTypeProperties for T
Source§#[doc(hidden)] const IS_ZST: bool = _
#[doc(hidden)] const IS_ZST: bool = _
🔬This is a nightly-only experimental API. (
sized_type_properties
)Source§#[doc(hidden)] const LAYOUT: Layout = _
#[doc(hidden)] const LAYOUT: Layout = _
🔬This is a nightly-only experimental API. (
sized_type_properties
)Source§#[doc(hidden)] const MAX_SLICE_LEN: usize = _
#[doc(hidden)] const MAX_SLICE_LEN: usize = _
🔬This is a nightly-only experimental API. (
sized_type_properties
)The largest safe length for a
[Self]
. Read more