[−][src]Struct futures_util::io::AllowStdIo
A simple wrapper type which allows types which implement only
implement std::io::Read
or std::io::Write
to be used in contexts which expect an AsyncRead
or AsyncWrite
.
If these types issue an error with the kind io::ErrorKind::WouldBlock
,
it is expected that they will notify the current task on readiness.
Synchronous std
types should not issue errors of this kind and
are safe to use in this context. However, using these types with
AllowStdIo
will cause the event loop to block, so they should be used
with care.
Methods
impl<T> AllowStdIo<T>
[src]
pub fn new(io: T) -> Self
[src]
Creates a new AllowStdIo
from an existing IO object.
ⓘImportant traits for &'_ mut Ipub fn get_ref(&self) -> &T
[src]
Returns a reference to the contained IO object.
ⓘImportant traits for &'_ mut Ipub fn get_mut(&mut self) -> &mut T
[src]
Returns a mutable reference to the contained IO object.
pub fn into_inner(self) -> T
[src]
Consumes self and returns the contained IO object.
Trait Implementations
impl<T: PartialEq> PartialEq<AllowStdIo<T>> for AllowStdIo<T>
[src]
fn eq(&self, other: &AllowStdIo<T>) -> bool
[src]
fn ne(&self, other: &AllowStdIo<T>) -> bool
[src]
impl<T: Ord> Ord for AllowStdIo<T>
[src]
fn cmp(&self, other: &AllowStdIo<T>) -> Ordering
[src]
fn max(self, other: Self) -> Self
1.21.0[src]
Compares and returns the maximum of two values. Read more
fn min(self, other: Self) -> Self
1.21.0[src]
Compares and returns the minimum of two values. Read more
impl<T: Clone> Clone for AllowStdIo<T>
[src]
ⓘImportant traits for AllowStdIo<T>fn clone(&self) -> AllowStdIo<T>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<T: Eq> Eq for AllowStdIo<T>
[src]
impl<T: Copy> Copy for AllowStdIo<T>
[src]
impl<T: PartialOrd> PartialOrd<AllowStdIo<T>> for AllowStdIo<T>
[src]
fn partial_cmp(&self, other: &AllowStdIo<T>) -> Option<Ordering>
[src]
fn lt(&self, other: &AllowStdIo<T>) -> bool
[src]
fn le(&self, other: &AllowStdIo<T>) -> bool
[src]
fn gt(&self, other: &AllowStdIo<T>) -> bool
[src]
fn ge(&self, other: &AllowStdIo<T>) -> bool
[src]
impl<T: Hash> Hash for AllowStdIo<T>
[src]
fn hash<__HT: Hasher>(&self, state: &mut __HT)
[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl<T: Debug> Debug for AllowStdIo<T>
[src]
impl<T> Read for AllowStdIo<T> where
T: Read,
[src]
T: Read,
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
[src]
fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize>
[src]
fn read_to_string(&mut self, buf: &mut String) -> Result<usize>
[src]
fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>
[src]
unsafe fn initializer(&self) -> Initializer
[src]
read_initializer
)Determines if this Read
er can work with buffers of uninitialized memory. Read more
ⓘImportant traits for &'_ mut Ifn by_ref(&mut self) -> &mut Self
1.0.0[src]
Creates a "by reference" adaptor for this instance of Read
. Read more
ⓘImportant traits for Bytes<R>fn bytes(self) -> Bytes<Self>
1.0.0[src]
Transforms this Read
instance to an [Iterator
] over its bytes. Read more
fn chain<R>(self, next: R) -> Chain<Self, R> where
R: Read,
1.0.0[src]
R: Read,
Creates an adaptor which will chain this stream with another. Read more
fn take(self, limit: u64) -> Take<Self>
1.0.0[src]
Creates an adaptor which will read at most limit
bytes from it. Read more
impl<T> Write for AllowStdIo<T> where
T: Write,
[src]
T: Write,
fn write(&mut self, buf: &[u8]) -> Result<usize>
[src]
fn flush(&mut self) -> Result<()>
[src]
fn write_all(&mut self, buf: &[u8]) -> Result<()>
[src]
fn write_fmt(&mut self, fmt: Arguments) -> Result<()>
[src]
ⓘImportant traits for &'_ mut Ifn by_ref(&mut self) -> &mut Self
1.0.0[src]
Creates a "by reference" adaptor for this instance of Write
. Read more
impl<T> AsyncRead for AllowStdIo<T> where
T: Read,
[src]
T: Read,
fn poll_read(&mut self, _: &Waker, buf: &mut [u8]) -> Poll<Result<usize>>
[src]
unsafe fn initializer(&self) -> Initializer
[src]
Determines if this AsyncRead
er can work with buffers of uninitialized memory. Read more
fn poll_vectored_read(
&mut self,
waker: &Waker,
vec: &mut [&mut IoVec]
) -> Poll<Result<usize, Error>>
[src]
&mut self,
waker: &Waker,
vec: &mut [&mut IoVec]
) -> Poll<Result<usize, Error>>
Attempt to read from the AsyncRead
into vec
using vectored IO operations. Read more
impl<T> AsyncWrite for AllowStdIo<T> where
T: Write,
[src]
T: Write,
fn poll_write(&mut self, _: &Waker, buf: &[u8]) -> Poll<Result<usize>>
[src]
fn poll_flush(&mut self, _: &Waker) -> Poll<Result<()>>
[src]
fn poll_close(&mut self, waker: &Waker) -> Poll<Result<()>>
[src]
fn poll_vectored_write(
&mut self,
waker: &Waker,
vec: &[&IoVec]
) -> Poll<Result<usize, Error>>
[src]
&mut self,
waker: &Waker,
vec: &[&IoVec]
) -> Poll<Result<usize, Error>>
Attempt to write bytes from vec
into the object using vectored IO operations. Read more
Auto Trait Implementations
impl<T> Send for AllowStdIo<T> where
T: Send,
T: Send,
impl<T> Sync for AllowStdIo<T> where
T: Sync,
T: Sync,
Blanket Implementations
impl<R> AsyncReadExt for R where
R: AsyncRead + ?Sized,
[src]
R: AsyncRead + ?Sized,
fn copy_into<'a, W>(&'a mut self, writer: &'a mut W) -> CopyInto<'a, Self, W> where
W: AsyncWrite,
[src]
W: AsyncWrite,
Creates a future which copies all the bytes from one object to another. Read more
fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self>
[src]
Tries to read some bytes directly into the given buf
in asynchronous manner, returning a future type. Read more
fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self>
[src]
Creates a future which will read exactly enough bytes to fill buf
, returning an error if end of file (EOF) is hit sooner. Read more
fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self>
[src]
Creates a future which will read all the bytes from this AsyncRead
. Read more
fn split(self) -> (ReadHalf<Self>, WriteHalf<Self>) where
Self: AsyncWrite + Sized,
[src]
Self: AsyncWrite + Sized,
Helper method for splitting this read/write object into two halves. Read more
impl<W> AsyncWriteExt for W where
W: AsyncWrite + ?Sized,
[src]
W: AsyncWrite + ?Sized,
fn flush(&mut self) -> Flush<Self>
[src]
Creates a future which will entirely flush this AsyncWrite
. Read more
fn close(&mut self) -> Close<Self>
[src]
Creates a future which will entirely close this AsyncWrite
.
fn write_all<'a>(&'a mut self, buf: &'a [u8]) -> WriteAll<'a, Self>
[src]
Write data into this object. Read more
impl<T> From for T
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
ⓘImportant traits for &'_ mut Ifn borrow_mut(&mut self) -> &mut T
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,