pub trait WriteColor: Write {
// Required methods
fn supports_color(&self) -> bool;
fn set_color(&mut self, spec: &ColorSpec) -> Result<()>;
fn reset(&mut self) -> Result<()>;
// Provided method
fn is_synchronous(&self) -> bool { ... }
}
Expand description
This trait describes the behavior of writers that support colored output.
Required Methods§
Sourcefn supports_color(&self) -> bool
fn supports_color(&self) -> bool
Returns true if and only if the underlying writer supports colors.
Provided Methods§
Sourcefn is_synchronous(&self) -> bool
fn is_synchronous(&self) -> bool
Returns true if and only if the underlying writer must synchronously
interact with an end user’s device in order to control colors. By
default, this always returns false
.
In practice, this should return true
if the underlying writer is
manipulating colors using the Windows console APIs.
This is useful for writing generic code (such as a buffered writer) that can perform certain optimizations when the underlying writer doesn’t rely on synchronous APIs. For example, ANSI escape sequences can be passed through to the end user’s device as is.