pub struct AsyncSocket { /* private fields */ }
Expand description
Async socket. Provides cross-platform async adapter for system’s socket.
Implementations§
Source§impl AsyncSocket
impl AsyncSocket
Sourcepub fn new(socket_option: SocketOption) -> Result<AsyncSocket>
pub fn new(socket_option: SocketOption) -> Result<AsyncSocket>
Constructs a new AsyncSocket
Sourcepub async fn send_to(&self, buf: &[u8], target: SocketAddr) -> Result<usize>
pub async fn send_to(&self, buf: &[u8], target: SocketAddr) -> Result<usize>
Send packet to target
Sourcepub async fn receive_from(
&self,
buf: &mut Vec<u8>,
) -> Result<(usize, SocketAddr)>
pub async fn receive_from( &self, buf: &mut Vec<u8>, ) -> Result<(usize, SocketAddr)>
Receive packet with sender address
Sourcepub async fn bind(&self, addr: SocketAddr) -> Result<()>
pub async fn bind(&self, addr: SocketAddr) -> Result<()>
Bind socket to address
Sourcepub async fn set_receive_timeout(&self, timeout: Option<Duration>) -> Result<()>
pub async fn set_receive_timeout(&self, timeout: Option<Duration>) -> Result<()>
Set receive timeout
Sourcepub async fn set_ttl(&self, ttl: u32, ip_version: IpVersion) -> Result<()>
pub async fn set_ttl(&self, ttl: u32, ip_version: IpVersion) -> Result<()>
Set TTL or Hop Limit
Sourcepub async fn connect(&self, addr: SocketAddr) -> Result<()>
pub async fn connect(&self, addr: SocketAddr) -> Result<()>
Initiate TCP connection
Sourcepub async fn accept(&self) -> Result<(AsyncSocket, SocketAddr)>
pub async fn accept(&self) -> Result<(AsyncSocket, SocketAddr)>
Accept TCP connection
Sourcepub async fn peer_addr(&self) -> Result<SocketAddr>
pub async fn peer_addr(&self) -> Result<SocketAddr>
Get peer address
Sourcepub async fn local_addr(&self) -> Result<SocketAddr>
pub async fn local_addr(&self) -> Result<SocketAddr>
Get local address
Trait Implementations§
Source§impl Clone for AsyncSocket
impl Clone for AsyncSocket
Source§fn clone(&self) -> AsyncSocket
fn clone(&self) -> AsyncSocket
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 moreAuto Trait Implementations§
impl Freeze for AsyncSocket
impl RefUnwindSafe for AsyncSocket
impl Send for AsyncSocket
impl Sync for AsyncSocket
impl Unpin for AsyncSocket
impl UnwindSafe for AsyncSocket
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