Struct char_device::CharDevice
source · [−]#[repr(transparent)]pub struct CharDevice(_);Expand description
An unbuffered character device.
This is a wrapper around std::fs::File which is intended for use with
character device “files” such as “/dev/tty”.
Implementations
sourceimpl CharDevice
impl CharDevice
sourcepub fn new<Filelike: IntoFilelike + Read + Write>(
filelike: Filelike
) -> Result<Self>
pub fn new<Filelike: IntoFilelike + Read + Write>(
filelike: Filelike
) -> Result<Self>
Construct a new CharDevice. Fail if the given handle isn’t a valid
handle for a character device, or it can’t be determined.
sourcepub fn open<P: AsRef<Path>>(path: P) -> Result<Self>
pub fn open<P: AsRef<Path>>(path: P) -> Result<Self>
Construct a new CharDevice from the given filename. Fail if the given
handle isn’t a valid handle for a character device, or it can’t be
determined.
sourcepub unsafe fn new_unchecked<Filelike: IntoFilelike>(filelike: Filelike) -> Self
pub unsafe fn new_unchecked<Filelike: IntoFilelike>(filelike: Filelike) -> Self
sourcepub fn null() -> Result<Self>
pub fn null() -> Result<Self>
Construct a new CharDevice which discards writes and reads nothing.
This is “/dev/null” on Posix-ish platforms and “nul” on Windows.
sourcepub fn try_clone(&self) -> Result<Self>
pub fn try_clone(&self) -> Result<Self>
Creates a new independently owned handle to the underlying device.
sourcepub fn num_ready_bytes(&self) -> Result<u64>
pub fn num_ready_bytes(&self) -> Result<u64>
Return the number of bytes which are ready to be read immediately.
Trait Implementations
sourceimpl AsFd for CharDevice
impl AsFd for CharDevice
sourcefn as_fd(&self) -> BorrowedFd<'_>
fn as_fd(&self) -> BorrowedFd<'_>
Borrows the file descriptor. Read more
sourceimpl AsRawFd for CharDevice
impl AsRawFd for CharDevice
sourceimpl AsRawReadWriteFd for CharDevice
impl AsRawReadWriteFd for CharDevice
sourcefn as_raw_read_fd(&self) -> RawFd
fn as_raw_read_fd(&self) -> RawFd
Extracts the raw file descriptor for reading. Read more
sourcefn as_raw_write_fd(&self) -> RawFd
fn as_raw_write_fd(&self) -> RawFd
Extracts the raw file descriptor for writing. Read more
sourceimpl AsReadWriteFd for CharDevice
impl AsReadWriteFd for CharDevice
sourcefn as_read_fd(&self) -> BorrowedFd<'_>
fn as_read_fd(&self) -> BorrowedFd<'_>
Extracts the file descriptor for reading. Read more
sourcefn as_write_fd(&self) -> BorrowedFd<'_>
fn as_write_fd(&self) -> BorrowedFd<'_>
Extracts the file descriptor for writing. Read more
sourceimpl Debug for CharDevice
impl Debug for CharDevice
sourceimpl IntoFd for CharDevice
impl IntoFd for CharDevice
sourceimpl IntoRawFd for CharDevice
impl IntoRawFd for CharDevice
sourcefn into_raw_fd(self) -> RawFd
fn into_raw_fd(self) -> RawFd
Consumes this object, returning the raw underlying file descriptor. Read more
sourceimpl Read for CharDevice
impl Read for CharDevice
sourcefn 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
sourcefn 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 more
sourcefn is_read_vectored(&self) -> bool
fn is_read_vectored(&self) -> bool
can_vector)Determines if this Reader has an efficient read_vectored
implementation. Read more
sourcefn 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 more
sourcefn 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 more
sourcefn 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 more
sourcefn read_buf(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
fn read_buf(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
read_buf)Pull some bytes from this source into the specified buffer. Read more
sourcefn read_buf_exact(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
fn read_buf_exact(&mut self, buf: &mut ReadBuf<'_>) -> Result<(), Error>
read_buf)Read the exact number of bytes required to fill buf. Read more
1.0.0 · sourcefn by_ref(&mut self) -> &mut Self
fn by_ref(&mut self) -> &mut Self
Creates a “by reference” adaptor for this instance of Read. Read more
sourceimpl Write for CharDevice
impl Write for CharDevice
sourcefn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Write a buffer into this writer, returning how many bytes were written. Read more
sourcefn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flush this output stream, ensuring that all intermediately buffered contents reach their destination. Read more
sourcefn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
can_vector)Determines if this Writer has an efficient write_vectored
implementation. Read more
sourcefn write_all(&mut self, buf: &[u8]) -> Result<()>
fn write_all(&mut self, buf: &[u8]) -> Result<()>
Attempts to write an entire buffer into this writer. Read more
sourcefn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<()>
write_all_vectored)Attempts to write multiple buffers into this writer. Read more
Auto Trait Implementations
impl RefUnwindSafe for CharDevice
impl Send for CharDevice
impl Sync for CharDevice
impl Unpin for CharDevice
impl UnwindSafe for CharDevice
Blanket Implementations
sourceimpl<T> AsFilelike for T where
T: AsFd,
impl<T> AsFilelike for T where
T: AsFd,
sourcefn as_filelike(&self) -> BorrowedFd<'_>
fn as_filelike(&self) -> BorrowedFd<'_>
Borrows the reference. Read more
sourcefn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target> where
Target: FromFilelike + IntoFilelike,
fn as_filelike_view<Target>(&self) -> FilelikeView<'_, Target> where
Target: FromFilelike + IntoFilelike,
Return a borrowing view of a resource which dereferences to a &Target
or &mut Target. Read more
sourceimpl<T> AsGrip for T where
T: AsFd,
impl<T> AsGrip for T where
T: AsFd,
sourcefn as_grip(&self) -> BorrowedFd<'_>
fn as_grip(&self) -> BorrowedFd<'_>
Extracts the grip.
sourceimpl<T> AsRawFilelike for T where
T: AsRawFd,
impl<T> AsRawFilelike for T where
T: AsRawFd,
sourcefn as_raw_filelike(&self) -> i32
fn as_raw_filelike(&self) -> i32
Returns the raw value.
sourceimpl<T> AsRawGrip for T where
T: AsRawFd,
impl<T> AsRawGrip for T where
T: AsRawFd,
sourcefn as_raw_grip(&self) -> i32
fn as_raw_grip(&self) -> i32
Extracts the raw grip.
sourceimpl<T> AsRawReadWriteGrip for T where
T: AsRawReadWriteFd,
impl<T> AsRawReadWriteGrip for T where
T: AsRawReadWriteFd,
sourcefn as_raw_read_grip(&self) -> i32
fn as_raw_read_grip(&self) -> i32
Extracts the grip for reading. Read more
sourcefn as_raw_write_grip(&self) -> i32
fn as_raw_write_grip(&self) -> i32
Extracts the grip for writing. Read more
sourceimpl<T> AsRawSocketlike for T where
T: AsRawFd,
impl<T> AsRawSocketlike for T where
T: AsRawFd,
sourcefn as_raw_socketlike(&self) -> i32
fn as_raw_socketlike(&self) -> i32
Returns the raw value.
sourceimpl<T> AsReadWriteGrip for T where
T: AsReadWriteFd,
impl<T> AsReadWriteGrip for T where
T: AsReadWriteFd,
sourcefn as_read_grip(&self) -> BorrowedFd<'_>
fn as_read_grip(&self) -> BorrowedFd<'_>
Extracts the grip for reading. Read more
sourcefn as_write_grip(&self) -> BorrowedFd<'_>
fn as_write_grip(&self) -> BorrowedFd<'_>
Extracts the grip for writing. Read more
sourceimpl<T> AsSocketlike for T where
T: AsFd,
impl<T> AsSocketlike for T where
T: AsFd,
sourcefn as_socketlike(&self) -> BorrowedFd<'_>
fn as_socketlike(&self) -> BorrowedFd<'_>
Borrows the reference.
sourcefn as_socketlike_view<Target>(&self) -> FilelikeView<'_, Target> where
Target: FromSocketlike + IntoSocketlike,
fn as_socketlike_view<Target>(&self) -> FilelikeView<'_, Target> where
Target: FromSocketlike + IntoSocketlike,
Return a borrowing view of a resource which dereferences to a &Target
or &mut Target. Read more
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> IntoFilelike for T where
T: IntoFd,
impl<T> IntoFilelike for T where
T: IntoFd,
sourcefn into_filelike(self) -> OwnedFd
fn into_filelike(self) -> OwnedFd
Consumes this object, returning the underlying filelike object. Read more
sourceimpl<T> IntoRawFilelike for T where
T: IntoRawFd,
impl<T> IntoRawFilelike for T where
T: IntoRawFd,
sourcefn into_raw_filelike(self) -> i32
fn into_raw_filelike(self) -> i32
Returns the raw value.
sourceimpl<T> IntoRawGrip for T where
T: IntoRawFd,
impl<T> IntoRawGrip for T where
T: IntoRawFd,
sourcefn into_raw_grip(self) -> i32
fn into_raw_grip(self) -> i32
Consume self and convert into an RawGrip.
sourceimpl<T> IntoSocketlike for T where
T: IntoFd,
impl<T> IntoSocketlike for T where
T: IntoFd,
sourcefn into_socketlike(self) -> OwnedFd
fn into_socketlike(self) -> OwnedFd
Consumes this object, returning the underlying socketlike object.