[][src]Struct grep_searcher::sinks::UTF8

pub struct UTF8<F>(pub F)
where
    F: FnMut(u64, &str) -> Result<bool, Error>
;

A sink that provides line numbers and matches as strings while ignoring everything else.

This implementation will return an error if a match contains invalid UTF-8 or if the searcher was not configured to count lines. Errors on invalid UTF-8 can be suppressed by using the Lossy sink instead of this one.

The closure accepts two parameters: a line number and a UTF-8 string containing the matched data. The closure returns a Result<bool, io::Error>. If the bool is false, then the search stops immediately. Otherwise, searching continues.

If multi line mode was enabled, the line number refers to the line number of the first line in the match.

Trait Implementations

impl<F> Sink for UTF8<F> where
    F: FnMut(u64, &str) -> Result<bool, Error>, 
[src]

type Error = Error

The type of an error that should be reported by a searcher. Read more

fn context(
    &mut self,
    _searcher: &Searcher,
    _context: &SinkContext
) -> Result<bool, Self::Error>
[src]

This method is called whenever a context line is found, and is optional to implement. By default, it does nothing and returns true. Read more

fn context_break(&mut self, _searcher: &Searcher) -> Result<bool, Self::Error>[src]

This method is called whenever a break in contextual lines is found, and is optional to implement. By default, it does nothing and returns true. Read more

fn begin(&mut self, _searcher: &Searcher) -> Result<bool, Self::Error>[src]

This method is called when a search has begun, before any search is executed. By default, this does nothing. Read more

fn finish(
    &mut self,
    _searcher: &Searcher,
    _: &SinkFinish
) -> Result<(), Self::Error>
[src]

This method is called when a search has completed. By default, this does nothing. Read more

impl<F: Clone> Clone for UTF8<F> where
    F: FnMut(u64, &str) -> Result<bool, Error>, 
[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl<F: Debug> Debug for UTF8<F> where
    F: FnMut(u64, &str) -> Result<bool, Error>, 
[src]

Auto Trait Implementations

impl<F> Send for UTF8<F> where
    F: Send

impl<F> Sync for UTF8<F> where
    F: Sync

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

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

type Owned = T

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

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

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

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

The type returned in the event of a conversion error.