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
source impl Stderr
impl Stderr
source pub fn lock(&self) -> StderrLock<'static>iNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
pub fn lock(&self) -> StderrLock<'static>iNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
Locks 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(())
}Run Trait Implementations
1.63.0 · source impl AsFd for Stderr
impl AsFd for Stderr
source fn as_fd(&self) -> BorrowedFd<'_>
fn as_fd(&self) -> BorrowedFd<'_>
Borrows the file descriptor. Read more
1.63.0 · source impl AsHandle for Stderr
Available on Windows only.
impl AsHandle for Stderr
source fn as_handle(&self) -> BorrowedHandle<'_>
fn as_handle(&self) -> BorrowedHandle<'_>
Borrows the handle. Read more
1.21.0 · source impl AsRawHandle for Stderr
Available on Windows only.
impl AsRawHandle for Stderr
source fn as_raw_handle(&self) -> RawHandle
fn as_raw_handle(&self) -> RawHandle
Extracts the raw handle. Read more
1.48.0 · source impl Write for &Stderr
impl Write for &Stderr
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 write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize>
fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize>
source fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
Determines if this Writer has an efficient write_vectored
implementation. 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 write_all(&mut self, buf: &[u8]) -> Result<()>
fn write_all(&mut self, buf: &[u8]) -> Result<()>
Attempts to write an entire buffer into this writer. Read more
source fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
Attempts to write multiple buffers into this writer. Read more
source impl Write for Stderr
impl Write for Stderr
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 write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize>
fn write_vectored(&mut self, bufs: &[IoSlice<'_>]) -> Result<usize>
source fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
Determines if this Writer has an efficient write_vectored
implementation. 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 write_all(&mut self, buf: &[u8]) -> Result<()>
fn write_all(&mut self, buf: &[u8]) -> Result<()>
Attempts to write an entire buffer into this writer. Read more
source fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
Attempts 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
source impl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · source fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more