Struct io_extras::owned::OwnedReadable
source · #[repr(transparent)]pub struct OwnedReadable(_);
Expand description
An owning I/O handle that implements Read
.
This doesn’t implement Into*
or From*
traits.
Platform-specific behavior
On Posix-ish platforms, this reads from the handle as if it were a
[File
]. On Windows, this reads from a file-like handle as if it were a
[File
], and from a socket-like handle as if it were a [TcpStream
].
Trait Implementations§
source§impl AsHandleOrSocket for OwnedReadable
impl AsHandleOrSocket for OwnedReadable
OwnedReadable
owns its handle.
source§fn as_handle_or_socket(&self) -> BorrowedHandleOrSocket<'_>
fn as_handle_or_socket(&self) -> BorrowedHandleOrSocket<'_>
Like
AsHandle::as_handle
and AsSocket::as_socket
but can return either type.source§impl Debug for OwnedReadable
impl Debug for OwnedReadable
source§impl Drop for OwnedReadable
impl Drop for OwnedReadable
source§impl From<OwnedHandle> for OwnedReadable
impl From<OwnedHandle> for OwnedReadable
OwnedReadable
owns its handle.
source§fn from(handle: OwnedHandle) -> Self
fn from(handle: OwnedHandle) -> Self
Converts to this type from the input type.
source§impl From<OwnedHandleOrSocket> for OwnedReadable
impl From<OwnedHandleOrSocket> for OwnedReadable
OwnedReadable
owns its handle.
source§fn from(handle_or_socket: OwnedHandleOrSocket) -> Self
fn from(handle_or_socket: OwnedHandleOrSocket) -> Self
Converts to this type from the input type.
source§impl From<OwnedReadable> for OwnedHandleOrSocket
impl From<OwnedReadable> for OwnedHandleOrSocket
OwnedReadable
owns its handle.
source§fn from(readable: OwnedReadable) -> Self
fn from(readable: OwnedReadable) -> Self
Converts to this type from the input type.
source§impl Read for OwnedReadable
impl Read for OwnedReadable
source§fn read(&mut self, buf: &mut [u8]) -> Result<usize>
fn read(&mut self, buf: &mut [u8]) -> Result<usize>
Pull some bytes from this source into the specified buffer, returning
how many bytes were read. Read more
source§fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize>
fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize>
Like
read
, except that it reads into a slice of buffers. Read moresource§fn is_read_vectored(&self) -> bool
fn is_read_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector
)source§fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize>
fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize>
Read all bytes until EOF in this source, placing them into
buf
. Read moresource§fn read_to_string(&mut self, buf: &mut String) -> Result<usize>
fn read_to_string(&mut self, buf: &mut String) -> Result<usize>
Read all bytes until EOF in this source, appending them to
buf
. Read moresource§fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>
fn read_exact(&mut self, buf: &mut [u8]) -> Result<()>
Read the exact number of bytes required to fill
buf
. Read moresource§fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>
fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
read_buf
)Pull some bytes from this source into the specified buffer. Read more
source§fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>
fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
read_buf
)Read the exact number of bytes required to fill
cursor
. Read more1.0.0 · source§fn by_ref(&mut self) -> &mut Selfwhere
Self: Sized,
fn by_ref(&mut self) -> &mut Selfwhere Self: Sized,
Creates a “by reference” adaptor for this instance of
Read
. Read moreAuto Trait Implementations§
impl RefUnwindSafe for OwnedReadable
impl Send for OwnedReadable
impl Sync for OwnedReadable
impl Unpin for OwnedReadable
impl UnwindSafe for OwnedReadable
Blanket Implementations§
source§impl<T> AsGrip for Twhere
T: AsHandleOrSocket,
impl<T> AsGrip for Twhere T: AsHandleOrSocket,
source§fn as_grip(&self) -> BorrowedHandleOrSocket<'_>
fn as_grip(&self) -> BorrowedHandleOrSocket<'_>
Extracts the grip.
source§impl<T> FromFilelike for Twhere
T: From<OwnedHandle>,
impl<T> FromFilelike for Twhere T: From<OwnedHandle>,
source§fn from_filelike(owned: OwnedHandle) -> T
fn from_filelike(owned: OwnedHandle) -> T
Constructs a new instance of
Self
from the given filelike object. Read moresource§fn from_into_filelike<Owned>(owned: Owned) -> Twhere
Owned: IntoFilelike,
fn from_into_filelike<Owned>(owned: Owned) -> Twhere Owned: IntoFilelike,
Constructs a new instance of
Self
from the given filelike object
converted from into_owned
. Read moresource§impl<T> FromGrip for Twhere
T: From<OwnedHandleOrSocket>,
impl<T> FromGrip for Twhere T: From<OwnedHandleOrSocket>,
source§fn from_grip(owned_grip: OwnedHandleOrSocket) -> T
fn from_grip(owned_grip: OwnedHandleOrSocket) -> T
Consume an
OwnedGrip
and convert into a Self
.source§impl<T> FromHandle for Twhere
T: From<OwnedHandle>,
impl<T> FromHandle for Twhere T: From<OwnedHandle>,
source§fn from_handle(owned_handle: OwnedHandle) -> T
fn from_handle(owned_handle: OwnedHandle) -> T
👎Deprecated since 1.0.0:
FromHandle::from_handle
is replaced by From<OwnedHandle>::from
Constructs a new instance of
Self
from the given handle. Read moresource§fn from_into_handle<Owned>(into_owned: Owned) -> Selfwhere
Owned: Into<OwnedHandle>,
Self: Sized + From<OwnedHandle>,
fn from_into_handle<Owned>(into_owned: Owned) -> Selfwhere Owned: Into<OwnedHandle>, Self: Sized + From<OwnedHandle>,
source§impl<T> IntoGrip for Twhere
T: Into<OwnedHandleOrSocket>,
impl<T> IntoGrip for Twhere T: Into<OwnedHandleOrSocket>,
source§fn into_grip(self) -> OwnedHandleOrSocket
fn into_grip(self) -> OwnedHandleOrSocket
Consume
self
and convert into an OwnedGrip
.