Enum termcolor::WriterInnerLock
source · pub(crate) enum WriterInnerLock<'a, W> {
NoColor(NoColor<W>),
Ansi(Ansi<W>),
Unreachable(PhantomData<&'a ()>),
}
Expand description
WriterInnerLock is a (limited) generic representation of a writer. It is limited because W should only ever be stdout/stderr on Windows.
Variants§
NoColor(NoColor<W>)
Ansi(Ansi<W>)
Unreachable(PhantomData<&'a ()>)
What a gross hack. On Windows, we need to specify a lifetime for the
console when in a locked state, but obviously don’t need to do that
on Unix, which makes the 'a
unused. To satisfy the compiler, we need
a PhantomData.
Trait Implementations§
source§impl<'a, W: Debug> Debug for WriterInnerLock<'a, W>
impl<'a, W: Debug> Debug for WriterInnerLock<'a, W>
source§impl<'a, W: Write> Write for WriterInnerLock<'a, W>
impl<'a, W: Write> Write for WriterInnerLock<'a, W>
source§fn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Writes a buffer into this writer, returning how many bytes were written. Read more
source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flushes 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<'a, W: Write> WriteColor for WriterInnerLock<'a, W>
impl<'a, W: Write> WriteColor for WriterInnerLock<'a, W>
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<'a, W> Freeze for WriterInnerLock<'a, W>where
W: Freeze,
impl<'a, W> RefUnwindSafe for WriterInnerLock<'a, W>where
W: RefUnwindSafe,
impl<'a, W> Send for WriterInnerLock<'a, W>where
W: Send,
impl<'a, W> Sync for WriterInnerLock<'a, W>where
W: Sync,
impl<'a, W> Unpin for WriterInnerLock<'a, W>where
W: Unpin,
impl<'a, W> UnwindSafe for WriterInnerLock<'a, 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
Mutably borrows from an owned value. Read more