pub enum ResourceHandle {
Fd(ResourceHandleFd),
Socket(ResourceHandleSocket),
}
Expand description
Represents an underlying handle for a platform. On unix, everything is an fd
. On Windows, everything
is a Windows handle except for sockets (which are SOCKET
s).
Variants§
Fd(ResourceHandleFd)
A file handle/descriptor.
Socket(ResourceHandleSocket)
A socket handle/file descriptor.
Implementations§
Source§impl ResourceHandle
impl ResourceHandle
Sourcepub fn from_fd_like(io: &impl AsRawFd) -> Self
pub fn from_fd_like(io: &impl AsRawFd) -> Self
Converts a file-like thing to a ResourceHandle
.
Sourcepub fn from_socket_like(io: &impl AsRawFd) -> Self
pub fn from_socket_like(io: &impl AsRawFd) -> Self
Converts a socket-like thing to a ResourceHandle
.
Sourcepub fn is_valid(&self) -> bool
pub fn is_valid(&self) -> bool
Runs a basic validity check on the handle, but cannot fully determine if the handle is valid for use.
Sourcepub fn as_fd_like(&self) -> Option<ResourceHandleFd>
pub fn as_fd_like(&self) -> Option<ResourceHandleFd>
Returns this as a file-descriptor-like handle.
Sourcepub fn as_socket_like(&self) -> Option<ResourceHandleSocket>
pub fn as_socket_like(&self) -> Option<ResourceHandleSocket>
Returns this as a socket-like handle.
Sourcepub fn is_terminal(&self) -> bool
pub fn is_terminal(&self) -> bool
Determines if this handle is a terminal. Analagous to std::io::IsTerminal
.
Trait Implementations§
Source§impl Clone for ResourceHandle
impl Clone for ResourceHandle
Source§fn clone(&self) -> ResourceHandle
fn clone(&self) -> ResourceHandle
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ResourceHandle
impl Debug for ResourceHandle
Source§impl Hash for ResourceHandle
impl Hash for ResourceHandle
Source§impl PartialEq for ResourceHandle
impl PartialEq for ResourceHandle
impl Copy for ResourceHandle
impl Eq for ResourceHandle
impl StructuralPartialEq for ResourceHandle
Auto Trait Implementations§
impl Freeze for ResourceHandle
impl RefUnwindSafe for ResourceHandle
impl Send for ResourceHandle
impl Sync for ResourceHandle
impl Unpin for ResourceHandle
impl UnwindSafe for ResourceHandle
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more