[][src]Struct grep_printer::JSONSink

pub struct JSONSink<'p, 's, M: Matcher, W: 's> { /* fields omitted */ }

An implementation of Sink associated with a matcher and an optional file path for the JSON printer.

This type is generic over a few type parameters:

  • 'p refers to the lifetime of the file path, if one is provided. When no file path is given, then this is 'static.
  • 's refers to the lifetime of the JSON printer that this type borrows.
  • M refers to the type of matcher used by grep_searcher::Searcher that is reporting results to this sink.
  • W refers to the underlying writer that this printer is writing its output to.

Implementations

impl<'p, 's, M: Matcher, W: Write> JSONSink<'p, 's, M, W>[src]

pub fn has_match(&self) -> bool[src]

Returns true if and only if this printer received a match in the previous search.

This is unaffected by the result of searches before the previous search.

pub fn match_count(&self) -> u64[src]

Return the total number of matches reported to this sink.

This corresponds to the number of times Sink::matched is called.

pub fn binary_byte_offset(&self) -> Option<u64>[src]

If binary data was found in the previous search, this returns the offset at which the binary data was first detected.

The offset returned is an absolute offset relative to the entire set of bytes searched.

This is unaffected by the result of searches before the previous search. e.g., If the search prior to the previous search found binary data but the previous search found no binary data, then this will return None.

pub fn stats(&self) -> &Stats[src]

Return a reference to the stats produced by the printer for all searches executed on this sink.

Trait Implementations

impl<'p, 's, M: Debug + Matcher, W: Debug + 's> Debug for JSONSink<'p, 's, M, W>[src]

impl<'p, 's, M: Matcher, W: Write> Sink for JSONSink<'p, 's, M, W>[src]

type Error = Error

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

Auto Trait Implementations

impl<'p, 's, M, W> RefUnwindSafe for JSONSink<'p, 's, M, W> where
    M: RefUnwindSafe,
    W: RefUnwindSafe

impl<'p, 's, M, W> Send for JSONSink<'p, 's, M, W> where
    M: Send,
    W: Send

impl<'p, 's, M, W> Sync for JSONSink<'p, 's, M, W> where
    M: Sync,
    W: Sync

impl<'p, 's, M, W> Unpin for JSONSink<'p, 's, M, W> where
    M: Unpin

impl<'p, 's, M, W> !UnwindSafe for JSONSink<'p, 's, M, W>

Blanket Implementations

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

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

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

impl<T> From<T> for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.