Struct calloop::io::Async [−][src]
Adapter for async IO manipulations
This type wraps an IO object, providing methods to create futures waiting for its readiness.
If the futures-io
cargo feature is enabled, it also implements AsyncRead
and/or
AsyncWrite
if the underlying type implements Read
and/or Write
.
Note that this adapter and the futures procuded from it and not threadsafe.
Implementations
impl<'l, F: AsRawFd> Async<'l, F>
[src]
pub fn get_mut(&mut self) -> &mut F
[src]
Mutably access the underlying IO object
pub fn readable<'s>(&'s mut self) -> Readable<'s, 'l, F>ⓘ
[src]
A future that resolves once the object becomes ready for reading
pub fn writable<'s>(&'s mut self) -> Writable<'s, 'l, F>ⓘ
[src]
A future that resolves once the object becomes ready for writing
pub fn into_inner(mut self: Self) -> F
[src]
Remove the async adapter and retrieve the underlying object
Trait Implementations
impl<'l, F: AsRawFd + Read> AsyncRead for Async<'l, F>
[src]
fn poll_read(
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &mut [u8]
) -> TaskPoll<Result<usize>>
[src]
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &mut [u8]
) -> TaskPoll<Result<usize>>
fn poll_read_vectored(
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &mut [IoSliceMut<'_>]
) -> TaskPoll<Result<usize>>
[src]
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &mut [IoSliceMut<'_>]
) -> TaskPoll<Result<usize>>
impl<'l, F: AsRawFd + Write> AsyncWrite for Async<'l, F>
[src]
fn poll_write(
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8]
) -> TaskPoll<Result<usize>>
[src]
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8]
) -> TaskPoll<Result<usize>>
fn poll_write_vectored(
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>]
) -> TaskPoll<Result<usize>>
[src]
mut self: Pin<&mut Self>,
cx: &mut Context<'_>,
bufs: &[IoSlice<'_>]
) -> TaskPoll<Result<usize>>
fn poll_flush(
mut self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> TaskPoll<Result<()>>
[src]
mut self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> TaskPoll<Result<()>>
fn poll_close(
self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> TaskPoll<Result<()>>
[src]
self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> TaskPoll<Result<()>>
impl<'l, F: AsRawFd> Drop for Async<'l, F>
[src]
impl<'l, F: AsRawFd> Unpin for Async<'l, F>
[src]
Auto Trait Implementations
impl<'l, F> !RefUnwindSafe for Async<'l, F>
[src]
impl<'l, F> !Send for Async<'l, F>
[src]
impl<'l, F> !Sync for Async<'l, F>
[src]
impl<'l, F> !UnwindSafe for Async<'l, F>
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<R> AsyncReadExt for R where
R: AsyncRead + ?Sized,
[src]
R: AsyncRead + ?Sized,
pub fn chain<R>(self, next: R) -> Chain<Self, R> where
R: AsyncRead,
[src]
R: AsyncRead,
pub fn read(&'a mut self, buf: &'a mut [u8]) -> Read<'a, Self> where
Self: Unpin,
[src]
Self: Unpin,
pub fn read_vectored(
&'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,
pub fn read_exact(&'a mut self, buf: &'a mut [u8]) -> ReadExact<'a, Self> where
Self: Unpin,
[src]
Self: Unpin,
pub fn read_to_end(
&'a mut self,
buf: &'a mut Vec<u8, Global>
) -> ReadToEnd<'a, Self> where
Self: Unpin,
[src]
&'a mut self,
buf: &'a mut Vec<u8, Global>
) -> ReadToEnd<'a, Self> where
Self: Unpin,
pub fn read_to_string(
&'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,
pub fn split(self) -> (ReadHalf<Self>, WriteHalf<Self>) where
Self: AsyncWrite,
[src]
Self: AsyncWrite,
pub fn take(self, limit: u64) -> Take<Self>
[src]
impl<W> AsyncWriteExt for W where
W: AsyncWrite + ?Sized,
[src]
W: AsyncWrite + ?Sized,
pub fn flush(&mut self) -> Flush<'_, Self> where
Self: Unpin,
[src]
Self: Unpin,
pub fn close(&mut self) -> Close<'_, Self> where
Self: Unpin,
[src]
Self: Unpin,
pub fn write(&'a mut self, buf: &'a [u8]) -> Write<'a, Self> where
Self: Unpin,
[src]
Self: Unpin,
pub fn write_vectored(
&'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,
pub fn write_all(&'a mut self, buf: &'a [u8]) -> WriteAll<'a, Self> where
Self: Unpin,
[src]
Self: Unpin,
pub fn into_sink<Item>(self) -> IntoSink<Self, Item> where
Item: AsRef<[u8]>,
[src]
Item: AsRef<[u8]>,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub 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>,