Struct grep_printer::StandardSink
source · pub struct StandardSink<'p, 's, M: Matcher, W> { /* private fields */ }
Expand description
An implementation of Sink
associated with a matcher and an optional file
path for the standard printer.
A Sink
can be created via the Standard::sink
or
Standard::sink_with_path
methods, depending on whether you want to
include a file path in the printer’s output.
Building a StandardSink
is cheap, and callers should create a new one
for each thing that is searched. After a search has completed, callers may
query this sink for information such as whether a match occurred or whether
binary data was found (and if so, the offset at which it occurred).
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 theStandard
printer that this type borrows.M
refers to the type of matcher used bygrep_searcher::Searcher
that is reporting results to this sink.W
refers to the underlying writer that this printer is writing its output to.
Implementations§
source§impl<'p, 's, M: Matcher, W: WriteColor> StandardSink<'p, 's, M, W>
impl<'p, 's, M: Matcher, W: WriteColor> StandardSink<'p, 's, M, W>
sourcepub fn has_match(&self) -> bool
pub fn has_match(&self) -> bool
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 on this sink.
sourcepub fn match_count(&self) -> u64
pub fn match_count(&self) -> u64
Return the total number of matches reported to this sink.
This corresponds to the number of times Sink::matched
is called
on the previous search.
This is unaffected by the result of searches before the previous search on this sink.
sourcepub fn binary_byte_offset(&self) -> Option<u64>
pub fn binary_byte_offset(&self) -> Option<u64>
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
.
sourcepub fn stats(&self) -> Option<&Stats>
pub fn stats(&self) -> Option<&Stats>
Return a reference to the stats produced by the printer for all searches executed on this sink.
This only returns stats if they were requested via the
StandardBuilder
configuration.
Trait Implementations§
source§impl<'p, 's, M: Matcher, W: WriteColor> Sink for StandardSink<'p, 's, M, W>
impl<'p, 's, M: Matcher, W: WriteColor> Sink for StandardSink<'p, 's, M, W>
source§fn matched(
&mut self,
searcher: &Searcher,
mat: &SinkMatch<'_>,
) -> Result<bool, Error>
fn matched( &mut self, searcher: &Searcher, mat: &SinkMatch<'_>, ) -> Result<bool, Error>
source§fn context(
&mut self,
searcher: &Searcher,
ctx: &SinkContext<'_>,
) -> Result<bool, Error>
fn context( &mut self, searcher: &Searcher, ctx: &SinkContext<'_>, ) -> Result<bool, Error>
true
. Read moresource§fn context_break(&mut self, searcher: &Searcher) -> Result<bool, Error>
fn context_break(&mut self, searcher: &Searcher) -> Result<bool, Error>
true
. Read more