pub struct Buffer(/* private fields */);
Expand description
Write colored text to memory.
Buffer
is a platform independent abstraction for printing colored text to
an in memory buffer. When the buffer is printed using a BufferWriter
, the
color information will be applied to the output device (a tty on Unix and a
console on Windows).
A Buffer
is typically created by calling the BufferWriter.buffer
method, which will take color preferences and the environment into
account. However, buffers can also be manually created using no_color
,
ansi
or console
(on Windows).
Implementations§
source§impl Buffer
impl Buffer
sourcepub fn into_inner(self) -> Vec<u8>
pub fn into_inner(self) -> Vec<u8>
Consume this buffer and return the underlying raw data.
On Windows, this unrecoverably drops all color information associated with the buffer.
sourcepub fn as_mut_slice(&mut self) -> &mut [u8] ⓘ
pub fn as_mut_slice(&mut self) -> &mut [u8] ⓘ
Return the underlying data of the buffer as a mutable slice.
Trait Implementations§
source§impl Write for Buffer
impl Write for Buffer
source§fn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Write a buffer into this writer, returning how many bytes were written. Read more
source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flush this output stream, ensuring that all intermediately buffered
contents reach their destination. Read more
source§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector
)1.0.0 · source§fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
Attempts to write an entire buffer into this writer. Read more
source§fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
write_all_vectored
)Attempts to write multiple buffers into this writer. Read more
source§impl WriteColor for Buffer
impl WriteColor for Buffer
source§fn supports_color(&self) -> bool
fn supports_color(&self) -> bool
Returns true if and only if the underlying writer supports colors.
source§fn supports_hyperlinks(&self) -> bool
fn supports_hyperlinks(&self) -> bool
Returns true if and only if the underlying writer supports hyperlinks. Read more
source§fn set_color(&mut self, spec: &ColorSpec) -> Result<()>
fn set_color(&mut self, spec: &ColorSpec) -> Result<()>
Set the color settings of the writer. Read more
source§fn set_hyperlink(&mut self, link: &HyperlinkSpec<'_>) -> Result<()>
fn set_hyperlink(&mut self, link: &HyperlinkSpec<'_>) -> Result<()>
Set the current hyperlink of the writer. Read more
source§fn reset(&mut self) -> Result<()>
fn reset(&mut self) -> Result<()>
Reset the current color settings to their original settings. Read more
source§fn 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
. Read moreAuto Trait Implementations§
impl RefUnwindSafe for Buffer
impl Send for Buffer
impl Sync for Buffer
impl Unpin for Buffer
impl UnwindSafe for Buffer
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
Mutably borrows from an owned value. Read more