Struct grep_printer::Summary
source · pub struct Summary<W> { /* private fields */ }
Expand description
The summary printer, which emits aggregate results from a search.
Aggregate results generally correspond to file paths and/or the number of matches found.
A default printer can be created with either of the Summary::new
or
Summary::new_no_color
constructors. However, there are a number of
options that configure this printer’s output. Those options can be
configured using SummaryBuilder
.
This type is generic over W
, which represents any implementation of
the termcolor::WriteColor
trait.
Implementations§
source§impl<W: WriteColor> Summary<W>
impl<W: WriteColor> Summary<W>
sourcepub fn new(wtr: W) -> Summary<W>
pub fn new(wtr: W) -> Summary<W>
Return a summary printer with a default configuration that writes matches to the given writer.
The writer should be an implementation of termcolor::WriteColor
and not just a bare implementation of io::Write
. To use a normal
io::Write
implementation (simultaneously sacrificing colors), use
the new_no_color
constructor.
The default configuration uses the Count
summary mode.
source§impl<W: Write> Summary<NoColor<W>>
impl<W: Write> Summary<NoColor<W>>
sourcepub fn new_no_color(wtr: W) -> Summary<NoColor<W>>
pub fn new_no_color(wtr: W) -> Summary<NoColor<W>>
Return a summary printer with a default configuration that writes matches to the given writer.
The writer can be any implementation of io::Write
. With this
constructor, the printer will never emit colors.
The default configuration uses the Count
summary mode.
source§impl<W: WriteColor> Summary<W>
impl<W: WriteColor> Summary<W>
sourcepub fn sink<'s, M: Matcher>(
&'s mut self,
matcher: M,
) -> SummarySink<'static, 's, M, W>
pub fn sink<'s, M: Matcher>( &'s mut self, matcher: M, ) -> SummarySink<'static, 's, M, W>
Return an implementation of Sink
for the summary printer.
This does not associate the printer with a file path, which means this
implementation will never print a file path. If the output mode of
this summary printer does not make sense without a file path (such as
PathWithMatch
or PathWithoutMatch
), then any searches executed
using this sink will immediately quit with an error.
sourcepub fn sink_with_path<'p, 's, M, P>(
&'s mut self,
matcher: M,
path: &'p P,
) -> SummarySink<'p, 's, M, W>
pub fn sink_with_path<'p, 's, M, P>( &'s mut self, matcher: M, path: &'p P, ) -> SummarySink<'p, 's, M, W>
Return an implementation of Sink
associated with a file path.
When the printer is associated with a path, then it may, depending on its configuration, print the path.
source§impl<W> Summary<W>
impl<W> Summary<W>
sourcepub fn has_written(&self) -> bool
pub fn has_written(&self) -> bool
Returns true if and only if this printer has written at least one byte to the underlying writer during any of the previous searches.
sourcepub fn into_inner(self) -> W
pub fn into_inner(self) -> W
Consume this printer and return back ownership of the underlying writer.
Trait Implementations§
Auto Trait Implementations§
impl<W> !Freeze for Summary<W>
impl<W> !RefUnwindSafe for Summary<W>
impl<W> Send for Summary<W>where
W: Send,
impl<W> !Sync for Summary<W>
impl<W> Unpin for Summary<W>where
W: Unpin,
impl<W> UnwindSafe for Summary<W>where
W: UnwindSafe,
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)