pub struct Stderr { /* private fields */ }Expand description
A handle to the standard error stream of a process.
For more information, see the io::stderr method.
Note: Windows Portability Considerations
When operating in a console, the Windows implementation of this stream does not support non-UTF-8 byte sequences. Attempting to write bytes that are not valid UTF-8 will return an error.
In a process with a detached console, such as one using
#![windows_subsystem = "windows"], or in a child process spawned from such a process,
the contained handle will be null. In such cases, the standard library’s Read and
Write will do nothing and silently succeed. All other I/O operations, via the
standard library or via raw Windows API calls, will fail.
Implementations
impl Stderr
source
impl Stderr
sourcepub fn lock(&self) -> StderrLock<'static>ⓘNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
source
pub fn lock(&self) -> StderrLock<'static>ⓘNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
sourceLocks this handle to the standard error stream, returning a writable guard.
The lock is released when the returned lock goes out of scope. The
returned guard also implements the Write trait for writing data.
Examples
use std::io::{self, Write};
fn foo() -> io::Result<()> {
let stderr = io::stderr();
let mut handle = stderr.lock();
handle.write_all(b"hello world")?;
Ok(())
}RunTrait Implementations
impl AsFd for Stderr
source
impl AsFd for Stderr
sourcefn as_fd(&self) -> BorrowedFd<'_>
source
fn as_fd(&self) -> BorrowedFd<'_>
sourceBorrows the file descriptor. Read more
impl AsHandle for Stderr
source Available on Windows only.
impl AsHandle for Stderr
sourceimpl AsRawHandle for Stderr
1.21.0 · source Available on Windows only.
impl AsRawHandle for Stderr
1.21.0 · sourcefn as_raw_handle(&self) -> RawHandle
source
fn as_raw_handle(&self) -> RawHandle
sourceExtracts the raw handle. Read more
impl Write for Stderr
source
impl Write for Stderr
sourcefn write(&mut self, buf: &[u8]) -> Result<usize>
source
fn write(&mut self, buf: &[u8]) -> Result<usize>
sourceWrite a buffer into this writer, returning how many bytes were written. Read more
fn is_write_vectored(&self) -> bool
source
fn is_write_vectored(&self) -> bool
sourceDetermines if this Writer has an efficient write_vectored
implementation. Read more
fn flush(&mut self) -> Result<()>
source
fn flush(&mut self) -> Result<()>
sourceFlush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
fn write_all(&mut self, buf: &[u8]) -> Result<()>
source
fn write_all(&mut self, buf: &[u8]) -> Result<()>
sourceAttempts to write an entire buffer into this writer. Read more
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
source
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
sourceAttempts to write multiple buffers into this writer. Read more
impl Write for &Stderr
1.48.0 · source
impl Write for &Stderr
1.48.0 · sourcefn write(&mut self, buf: &[u8]) -> Result<usize>
source
fn write(&mut self, buf: &[u8]) -> Result<usize>
sourceWrite a buffer into this writer, returning how many bytes were written. Read more
fn is_write_vectored(&self) -> bool
source
fn is_write_vectored(&self) -> bool
sourceDetermines if this Writer has an efficient write_vectored
implementation. Read more
fn flush(&mut self) -> Result<()>
source
fn flush(&mut self) -> Result<()>
sourceFlush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
fn write_all(&mut self, buf: &[u8]) -> Result<()>
source
fn write_all(&mut self, buf: &[u8]) -> Result<()>
sourceAttempts to write an entire buffer into this writer. Read more
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
source
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
sourceAttempts to write multiple buffers into this writer. Read more
Auto Trait Implementations
impl RefUnwindSafe for Stderr
impl Send for Stderr
impl Sync for Stderr
impl Unpin for Stderr
impl UnwindSafe for Stderr
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
source
impl<T> BorrowMut<T> for T where
T: ?Sized,
sourcefn borrow_mut(&mut self) -> &mut T
const: unstable · source
fn borrow_mut(&mut self) -> &mut T
const: unstable · sourceMutably borrows from an owned value. Read more