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 Consideration
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.
Implementations
sourceimpl Stderr
impl Stderr
sourcepub fn lock(&self) -> StderrLock<'_>ⓘNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
pub fn lock(&self) -> StderrLock<'_>ⓘNotable 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(())
}
Runsourcepub fn into_locked(self) -> StderrLock<'static>ⓘNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
pub fn into_locked(self) -> StderrLock<'static>ⓘNotable traits for StderrLock<'_>impl Write for StderrLock<'_>
Locks and consumes this handle to the standard error stream, returning a writable guard.
The lock is released when the returned guard goes out of scope. The
returned guard also implements the Write
trait for writing
data.
Examples
#![feature(stdio_locked)]
use std::io::{self, Write};
fn foo() -> io::Result<()> {
let stderr = io::stderr();
let mut handle = stderr.into_locked();
handle.write_all(b"hello world")?;
Ok(())
}
RunTrait Implementations
sourceimpl AsFd for Stderr
impl AsFd for Stderr
sourcefn as_fd(&self) -> BorrowedFd<'_>
fn as_fd(&self) -> BorrowedFd<'_>
Borrows the file descriptor. Read more
sourceimpl AsHandle for Stderr
This is supported on Windows only.
impl AsHandle for Stderr
1.21.0 · sourceimpl AsRawHandle for Stderr
This is supported on Windows only.
impl AsRawHandle for Stderr
sourcefn as_raw_handle(&self) -> RawHandle
fn as_raw_handle(&self) -> RawHandle
Extracts the raw handle, without taking any ownership.
sourceimpl Write for Stderr
impl Write for Stderr
sourcefn 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
sourcefn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
Determines if this Write
r has an efficient write_vectored
implementation. Read more
sourcefn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
sourcefn 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
sourcefn 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
1.48.0 · sourceimpl Write for &Stderr
impl Write for &Stderr
sourcefn 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
sourcefn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
Determines if this Write
r has an efficient write_vectored
implementation. Read more
sourcefn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
sourcefn 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
sourcefn 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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more