[−][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 Fpub fn get_ref(&self) -> &T[src]
Returns a reference to the contained IO object.
ⓘImportant traits for &'_ mut Fpub 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> Unpin for AllowStdIo<T>[src]
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]
impl<T: Copy> Copy for AllowStdIo<T>[src]
impl<T: Eq> Eq for AllowStdIo<T>[src]
impl<T: Ord> Ord for AllowStdIo<T>[src]
fn cmp(&self, other: &AllowStdIo<T>) -> Ordering[src]
fn max(self, other: Self) -> Self1.21.0[src]
fn min(self, other: Self) -> Self1.21.0[src]
fn clamp(self, min: Self, max: Self) -> Self[src]
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: 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: Debug> Debug for AllowStdIo<T>[src]
impl<T: Hash> Hash for AllowStdIo<T>[src]
fn hash<__H: Hasher>(&self, state: &mut __H)[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
    H: Hasher, 1.3.0[src]
H: Hasher,
impl<T> StructuralPartialEq for AllowStdIo<T>[src]
impl<T> StructuralEq 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_vectored(&mut self, bufs: &mut [IoSliceMut]) -> 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]
ⓘImportant traits for &'_ mut Ffn by_ref(&mut self) -> &mut Self1.0.0[src]
fn bytes(self) -> Bytes<Self>1.0.0[src]
fn chain<R>(self, next: R) -> Chain<Self, R> where
    R: Read, 1.0.0[src]
R: Read,
fn take(self, limit: u64) -> Take<Self>1.0.0[src]
impl<T> Write for AllowStdIo<T> where
    T: Write, [src]
T: Write,
fn write(&mut self, buf: &[u8]) -> Result<usize>[src]
fn write_vectored(&mut self, bufs: &[IoSlice]) -> 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 Ffn by_ref(&mut self) -> &mut Self1.0.0[src]
impl<T> BufRead for AllowStdIo<T> where
    T: BufRead, [src]
T: BufRead,
fn fill_buf(&mut self) -> Result<&[u8]>[src]
fn consume(&mut self, amt: usize)[src]
fn read_until(&mut self, byte: u8, buf: &mut Vec<u8>) -> Result<usize, Error>1.0.0[src]
fn read_line(&mut self, buf: &mut String) -> Result<usize, Error>1.0.0[src]
fn split(self, byte: u8) -> Split<Self>1.0.0[src]
fn lines(self) -> Lines<Self>1.0.0[src]
impl<T> Seek for AllowStdIo<T> where
    T: Seek, [src]
T: Seek,
fn seek(&mut self, pos: SeekFrom) -> Result<u64>[src]
fn stream_len(&mut self) -> Result<u64, Error>[src]
fn stream_position(&mut self) -> Result<u64, Error>[src]
impl<T> AsyncRead for AllowStdIo<T> where
    T: Read, [src]
T: Read,
fn poll_read(
    self: Pin<&mut Self>, 
    _: &mut Context, 
    buf: &mut [u8]
) -> Poll<Result<usize>>[src]
self: Pin<&mut Self>,
_: &mut Context,
buf: &mut [u8]
) -> Poll<Result<usize>>
fn poll_read_vectored(
    self: Pin<&mut Self>, 
    _: &mut Context, 
    bufs: &mut [IoSliceMut]
) -> Poll<Result<usize>>[src]
self: Pin<&mut Self>,
_: &mut Context,
bufs: &mut [IoSliceMut]
) -> Poll<Result<usize>>
impl<T> AsyncWrite for AllowStdIo<T> where
    T: Write, [src]
T: Write,
fn poll_write(
    self: Pin<&mut Self>, 
    _: &mut Context, 
    buf: &[u8]
) -> Poll<Result<usize>>[src]
self: Pin<&mut Self>,
_: &mut Context,
buf: &[u8]
) -> Poll<Result<usize>>
fn poll_write_vectored(
    self: Pin<&mut Self>, 
    _: &mut Context, 
    bufs: &[IoSlice]
) -> Poll<Result<usize>>[src]
self: Pin<&mut Self>,
_: &mut Context,
bufs: &[IoSlice]
) -> Poll<Result<usize>>
fn poll_flush(self: Pin<&mut Self>, _: &mut Context) -> Poll<Result<()>>[src]
fn poll_close(self: Pin<&mut Self>, cx: &mut Context) -> Poll<Result<()>>[src]
impl<T> AsyncSeek for AllowStdIo<T> where
    T: Seek, [src]
T: Seek,
impl<T> AsyncBufRead for AllowStdIo<T> where
    T: BufRead, [src]
T: BufRead,
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,
impl<T> UnwindSafe for AllowStdIo<T> where
    T: UnwindSafe, 
T: UnwindSafe,
impl<T> RefUnwindSafe for AllowStdIo<T> where
    T: RefUnwindSafe, 
T: RefUnwindSafe,
Blanket Implementations
impl<R> AsyncReadExt for R where
    R: AsyncRead + ?Sized, [src]
R: AsyncRead + ?Sized,
fn chain<R>(self, next: R) -> Chain<Self, R> where
    Self: Sized,
    R: AsyncRead, [src]
Self: Sized,
R: AsyncRead,
ⓘImportant traits for Read<'_, R>fn read<'a>(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self> where
    Self: Unpin, [src]
Self: Unpin,
ⓘImportant traits for ReadVectored<'_, R>fn read_vectored<'a>(
    &'a mut self, 
    bufs: &'a mut [IoSliceMut<'a>]
) -> ReadVectored<'a, Self> where
    Self: Unpin, [src]
&'a mut self,
bufs: &'a mut [IoSliceMut<'a>]
) -> ReadVectored<'a, Self> where
Self: Unpin,
ⓘImportant traits for ReadExact<'_, R>fn read_exact<'a>(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self> where
    Self: Unpin, [src]
Self: Unpin,
ⓘImportant traits for ReadToEnd<'_, A>fn read_to_end<'a>(&'a mut self, buf: &'a mut Vec<u8>) -> ReadToEnd<'a, Self> where
    Self: Unpin, [src]
Self: Unpin,
ⓘImportant traits for ReadToString<'_, A>fn read_to_string<'a>(
    &'a mut self, 
    buf: &'a mut String
) -> ReadToString<'a, Self> where
    Self: Unpin, [src]
&'a mut self,
buf: &'a mut String
) -> ReadToString<'a, Self> where
Self: Unpin,
fn split(self) -> (ReadHalf<Self>, WriteHalf<Self>) where
    Self: AsyncWrite + Sized, [src]
Self: AsyncWrite + Sized,
fn take(self, limit: u64) -> Take<Self> where
    Self: Sized, [src]
Self: Sized,
impl<W> AsyncWriteExt for W where
    W: AsyncWrite + ?Sized, [src]
W: AsyncWrite + ?Sized,
ⓘImportant traits for Flush<'_, W>fn flush(&mut self) -> Flush<Self> where
    Self: Unpin, [src]
Self: Unpin,
ⓘImportant traits for Close<'_, W>fn close(&mut self) -> Close<Self> where
    Self: Unpin, [src]
Self: Unpin,
ⓘImportant traits for Write<'_, W>fn write<'a>(&'a mut self, buf: &'a [u8]) -> Write<'a, Self> where
    Self: Unpin, [src]
Self: Unpin,
ⓘImportant traits for WriteVectored<'_, W>fn write_vectored<'a>(
    &'a mut self, 
    bufs: &'a [IoSlice<'a>]
) -> WriteVectored<'a, Self> where
    Self: Unpin, [src]
&'a mut self,
bufs: &'a [IoSlice<'a>]
) -> WriteVectored<'a, Self> where
Self: Unpin,
ⓘImportant traits for WriteAll<'_, W>fn write_all<'a>(&'a mut self, buf: &'a [u8]) -> WriteAll<'a, Self> where
    Self: Unpin, [src]
Self: Unpin,
fn into_sink<Item: AsRef<[u8]>>(self) -> IntoSink<Self, Item> where
    Self: Sized, [src]
Self: Sized,
impl<S> AsyncSeekExt for S where
    S: AsyncSeek + ?Sized, [src]
S: AsyncSeek + ?Sized,
ⓘImportant traits for Seek<'_, S>fn seek(&mut self, pos: SeekFrom) -> Seek<Self> where
    Self: Unpin, [src]
Self: Unpin,
impl<R> AsyncBufReadExt for R where
    R: AsyncBufRead + ?Sized, [src]
R: AsyncBufRead + ?Sized,
ⓘImportant traits for ReadUntil<'_, R>fn read_until<'a>(
    &'a mut self, 
    byte: u8, 
    buf: &'a mut Vec<u8>
) -> ReadUntil<'a, Self> where
    Self: Unpin, [src]
&'a mut self,
byte: u8,
buf: &'a mut Vec<u8>
) -> ReadUntil<'a, Self> where
Self: Unpin,
ⓘImportant traits for ReadLine<'_, R>fn read_line<'a>(&'a mut self, buf: &'a mut String) -> ReadLine<'a, Self> where
    Self: Unpin, [src]
Self: Unpin,
fn lines(self) -> Lines<Self> where
    Self: Sized, [src]
Self: Sized,
impl<T, U> Into<U> for T where
    U: From<T>, [src]
U: From<T>,
impl<T> From<T> for T[src]
impl<T> ToOwned for T where
    T: Clone, [src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T[src]
fn clone_into(&self, target: &mut T)[src]
impl<T, U> TryFrom<U> for T where
    U: Into<T>, [src]
U: Into<T>,
type Error = !
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, U> TryInto<U> for T where
    U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]
impl<T> Borrow<T> for T where
    T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
    T: ?Sized, [src]
T: ?Sized,
ⓘImportant traits for &'_ mut Ffn borrow_mut(&mut self) -> &mut T[src]
impl<T> Any for T where
    T: 'static + ?Sized, [src]
T: 'static + ?Sized,