pub struct Stdin(/* private fields */);Available on crate features
std and default only.Expand description
A handle to the standard input of the current process.
This reader is created by the stdin function. See its documentation for
more.
§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§
Source§impl Stdin
impl Stdin
Sourcepub async fn read_line(&self, buf: &mut String) -> Result<usize>
pub async fn read_line(&self, buf: &mut String) -> Result<usize>
Reads a line of input into the specified buffer.
§Examples
use async_std::io;
let stdin = io::stdin();
let mut line = String::new();
stdin.read_line(&mut line).await?;Sourcepub async fn lock(&self) -> StdinLock<'static>
Available on unstable only.
pub async fn lock(&self) -> StdinLock<'static>
unstable only.Locks this handle to the standard input stream, returning a readable guard.
The lock is released when the returned lock goes out of scope. The returned guard also implements the Read trait for accessing the underlying data.
§Examples
use async_std::io;
use async_std::prelude::*;
let mut buffer = String::new();
let stdin = io::stdin();
let mut handle = stdin.lock().await;
handle.read_to_string(&mut buffer).await?;Trait Implementations§
Source§impl AsRawHandle for Stdin
Available on Windows only.
impl AsRawHandle for Stdin
Available on Windows only.
Source§fn as_raw_handle(&self) -> RawHandle
fn as_raw_handle(&self) -> RawHandle
Available on crate features
std and docs only.Extracts the raw handle, without taking any ownership.
Source§impl Read for Stdin
impl Read for Stdin
Source§fn poll_read(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &mut [u8],
) -> Poll<Result<usize>>
fn poll_read( self: Pin<&mut Self>, cx: &mut Context<'_>, buf: &mut [u8], ) -> Poll<Result<usize>>
Available on crate feature
docs only.Attempt to read from the
AsyncRead into buf.Source§fn poll_read_vectored(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &mut [IoSliceMut<'_>],
) -> Poll<Result<usize>>
fn poll_read_vectored( self: Pin<&mut Self>, cx: &mut Context<'_>, bufs: &mut [IoSliceMut<'_>], ) -> Poll<Result<usize>>
Available on crate feature
docs only.Attempt to read from the
AsyncRead into bufs using vectored IO operations.Source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ImplFuture<Result<usize>>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ImplFuture<Result<usize>>where
Self: Unpin,
Available on crate feature
docs only.Reads some bytes from the byte stream. Read more
Source§fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ImplFuture<Result<usize>>where
Self: Unpin,
fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ImplFuture<Result<usize>>where
Self: Unpin,
Available on crate feature
docs only.Source§fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ImplFuture<Result<usize>>where
Self: Unpin,
fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ImplFuture<Result<usize>>where
Self: Unpin,
Available on crate feature
docs only.Reads all bytes from the byte stream. Read more
Source§fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ImplFuture<Result<usize>>where
Self: Unpin,
fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ImplFuture<Result<usize>>where
Self: Unpin,
Available on crate feature
docs only.Reads all bytes from the byte stream and appends them into a string. Read more
Source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ImplFuture<Result<()>>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ImplFuture<Result<()>>where
Self: Unpin,
Available on crate feature
docs only.Reads the exact number of bytes required to fill
buf. Read moreSource§fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
Available on crate feature
docs only.Creates an adaptor which will read at most
limit bytes from it. Read moreSource§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Available on crate feature
docs only.Creates a “by reference” adaptor for this instance of
Read. Read moreAuto Trait Implementations§
impl !Freeze for Stdin
impl RefUnwindSafe for Stdin
impl Send for Stdin
impl Sync for Stdin
impl Unpin for Stdin
impl UnsafeUnpin for Stdin
impl UnwindSafe for Stdin
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
Source§impl<T> ReadExt for T
impl<T> ReadExt for T
Source§fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self>where
Self: Unpin,
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadFuture<'a, Self>where
Self: Unpin,
Available on crate feature
std only.Reads some bytes from the byte stream. Read more
Source§fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectoredFuture<'a, Self>where
Self: Unpin,
fn read_vectored<'a>(
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>],
) -> ReadVectoredFuture<'a, Self>where
Self: Unpin,
Available on crate feature
std only.Source§fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ReadToEndFuture<'a, Self>where
Self: Unpin,
fn read_to_end<'a>(
&'a mut self,
buf: &'a mut Vec<u8>,
) -> ReadToEndFuture<'a, Self>where
Self: Unpin,
Available on crate feature
std only.Reads all bytes from the byte stream. Read more
Source§fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToStringFuture<'a, Self>where
Self: Unpin,
fn read_to_string<'a>(
&'a mut self,
buf: &'a mut String,
) -> ReadToStringFuture<'a, Self>where
Self: Unpin,
Available on crate feature
std only.Reads all bytes from the byte stream and appends them into a string. Read more
Source§fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self>where
Self: Unpin,
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExactFuture<'a, Self>where
Self: Unpin,
Available on crate feature
std only.Reads the exact number of bytes required to fill
buf. Read moreSource§fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
fn take(self, limit: u64) -> Take<Self>where
Self: Sized,
Available on crate feature
std only.Creates an adaptor which will read at most
limit bytes from it. Read moreSource§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
Available on crate feature
std only.Creates a “by reference” adaptor for this instance of
Read. Read more