#![forbid(unsafe_code, future_incompatible)]
#![deny(missing_debug_implementations, bad_style)]
#![deny(missing_docs)]
#![cfg_attr(test, deny(warnings))]
use std::pin::Pin;
use std::task::{Context, Poll};
pub trait AsyncDatagram {
type Sender;
type Receiver;
type Err;
fn poll_send_to(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &[u8],
receiver: &Self::Receiver,
) -> Poll<Result<usize, Self::Err>>;
#[allow(clippy::type_complexity)]
fn poll_recv_from(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
buf: &mut [u8],
) -> Poll<Result<(usize, Self::Sender), Self::Err>>;
}