pub struct Shell { /* private fields */ }
Expand description
An abstraction around a Write
able object that remembers preferences for output verbosity and
color.
Implementations
sourceimpl Shell
impl Shell
sourcepub fn new() -> Shell
pub fn new() -> Shell
Create a new shell (color choice and verbosity), defaulting to ‘auto’ color and verbose output.
sourcepub fn from_write(out: Box<dyn Write>) -> Shell
pub fn from_write(out: Box<dyn Write>) -> Shell
Create a shell from a plain writable object, with no color, and max verbosity.
sourcepub fn is_err_tty(&self) -> bool
pub fn is_err_tty(&self) -> bool
Returns whether stderr is a tty
sourcepub fn status<T, U>(&mut self, status: T, message: U) -> CargoResult<()>where
T: Display,
U: Display,
pub fn status<T, U>(&mut self, status: T, message: U) -> CargoResult<()>where
T: Display,
U: Display,
Shortcut to right-align and color green a status message.
pub fn status_header<T>(&mut self, status: T) -> CargoResult<()>where
T: Display,
sourcepub fn status_with_color<T, U>(
&mut self,
status: T,
message: U,
color: Color
) -> CargoResult<()>where
T: Display,
U: Display,
pub fn status_with_color<T, U>(
&mut self,
status: T,
message: U,
color: Color
) -> CargoResult<()>where
T: Display,
U: Display,
Shortcut to right-align a status message.
sourcepub fn verbose<F>(&mut self, callback: F) -> CargoResult<()>where
F: FnMut(&mut Shell) -> CargoResult<()>,
pub fn verbose<F>(&mut self, callback: F) -> CargoResult<()>where
F: FnMut(&mut Shell) -> CargoResult<()>,
Run the callback only if we are in verbose mode
sourcepub fn concise<F>(&mut self, callback: F) -> CargoResult<()>where
F: FnMut(&mut Shell) -> CargoResult<()>,
pub fn concise<F>(&mut self, callback: F) -> CargoResult<()>where
F: FnMut(&mut Shell) -> CargoResult<()>,
Run the callback if we are not in verbose mode.
sourcepub fn error<T: Display>(&mut self, message: T) -> CargoResult<()>
pub fn error<T: Display>(&mut self, message: T) -> CargoResult<()>
Print a red ‘error’ message
sourcepub fn warn<T: Display>(&mut self, message: T) -> CargoResult<()>
pub fn warn<T: Display>(&mut self, message: T) -> CargoResult<()>
Print an amber ‘warning’ message
sourcepub fn set_verbosity(&mut self, verbosity: Verbosity)
pub fn set_verbosity(&mut self, verbosity: Verbosity)
Update the verbosity of the shell
sourcepub fn set_color_choice(&mut self, color: Option<&str>) -> CargoResult<()>
pub fn set_color_choice(&mut self, color: Option<&str>) -> CargoResult<()>
Update the color choice (always, never, or auto) from a string.
sourcepub fn color_choice(&self) -> ColorChoice
pub fn color_choice(&self) -> ColorChoice
Get the current color choice
If we are not using a color stream, this will always return Never, even if the color choice has been set to something else.
sourcepub fn supports_color(&self) -> bool
pub fn supports_color(&self) -> bool
Whether the shell supports color.
sourcepub fn print_ansi(&mut self, message: &[u8]) -> CargoResult<()>
pub fn print_ansi(&mut self, message: &[u8]) -> CargoResult<()>
Prints a message and translates ANSI escape code into console colors.