#[non_exhaustive]pub enum SendRefusal {
TooLong {
max: usize,
},
HoldFull,
GroupDestination,
SocketFull,
SocketError,
}Expand description
Why a send was refused. Nothing went out.
The link refuses an NPDU it can’t carry, a foreign device’s node a
broadcast it can’t hold, and the host’s socket, through a port’s
Datagrams, a datagram it can’t take.
It is #[non_exhaustive], so a later reason isn’t a breaking change: a
match needs a wildcard arm.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
TooLong
The NPDU is longer than Link::max_npdu allows.
HoldFull
A foreign device holds as many broadcasts as its caller can keep
(Foreign::hold) until its first
registration attempt is answered.
GroupDestination
A unicast to one of the link’s group addresses
(Link::groups): the subnet’s broadcast
address, the limited broadcast or a multicast address. An
Original-Unicast-NPDU goes to one node’s own address; to reach the
group, broadcast (Link::broadcast).
SocketFull
The host’s socket can’t take the datagram now: its queue is full.
SocketError
The host’s socket couldn’t send the datagram: its buffer can’t hold the encoded message, or the send failed.
Trait Implementations§
Source§impl Clone for SendRefusal
impl Clone for SendRefusal
impl Copy for SendRefusal
Source§impl Debug for SendRefusal
impl Debug for SendRefusal
Source§impl Display for SendRefusal
impl Display for SendRefusal
impl Eq for SendRefusal
Source§impl Error for SendRefusal
impl Error for SendRefusal
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()