[][src]Trait nom::lib::std::str::pattern::Pattern

pub trait Pattern<'a> {
    type Searcher: Searcher<'a>;
    fn into_searcher(self, haystack: &'a str) -> Self::Searcher;

    fn is_contained_in(self, haystack: &'a str) -> bool { ... }
fn is_prefix_of(self, haystack: &'a str) -> bool { ... }
fn is_suffix_of(self, haystack: &'a str) -> bool
    where
        Self::Searcher: ReverseSearcher<'a>
, { ... } }
🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

A string pattern.

A Pattern<'a> expresses that the implementing type can be used as a string pattern for searching in a &'a str.

For example, both 'a' and "aa" are patterns that would match at index 1 in the string "baaaab".

The trait itself acts as a builder for an associated Searcher type, which does the actual work of finding occurrences of the pattern in a string.

Associated Types

type Searcher: Searcher<'a>

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Associated searcher for this pattern

Loading content...

Required methods

fn into_searcher(self, haystack: &'a str) -> Self::Searcher

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Constructs the associated searcher from self and the haystack to search in.

Loading content...

Provided methods

fn is_contained_in(self, haystack: &'a str) -> bool

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches anywhere in the haystack

fn is_prefix_of(self, haystack: &'a str) -> bool

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches at the front of the haystack

fn is_suffix_of(self, haystack: &'a str) -> bool where
    Self::Searcher: ReverseSearcher<'a>, 

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches at the back of the haystack

Loading content...

Implementations on Foreign Types

impl<'a> Pattern<'a> for char[src]

Searches for chars that are equal to a given char

type Searcher = CharSearcher<'a>

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

impl<'a, 'b> Pattern<'a> for &'b [char][src]

Searches for chars that are equal to any of the chars in the array

type Searcher = CharSliceSearcher<'a, 'b>

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

impl<'a, 'b, 'c> Pattern<'a> for &'c &'b str[src]

Delegates to the &str impl.

type Searcher = StrSearcher<'a, 'b>

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

impl<'a, 'b> Pattern<'a> for &'b str[src]

Non-allocating substring search.

Will handle the pattern "" as returning empty matches at each character boundary.

type Searcher = StrSearcher<'a, 'b>

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

fn is_prefix_of(self, haystack: &'a str) -> bool[src]

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches at the front of the haystack

fn is_suffix_of(self, haystack: &'a str) -> bool[src]

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Checks whether the pattern matches at the back of the haystack

Loading content...

Implementors

impl<'a, 'b> Pattern<'a> for &'b String[src]

A convenience impl that delegates to the impl for &str

type Searcher = <&'b str as Pattern<'a>>::Searcher

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

impl<'a, F> Pattern<'a> for F where
    F: FnMut(char) -> bool
[src]

Searches for chars that match the given predicate

type Searcher = CharPredicateSearcher<'a, F>

🔬 This is a nightly-only experimental API. (pattern)

API not fully fleshed out and ready to be stabilized

Loading content...