#[repr(C)]pub enum Directive<'a> {
Send {
target: InterfaceId,
bytes: &'a [u8],
},
SendIfOnline {
target: InterfaceId,
bytes: &'a [u8],
on_send: &'a mut dyn FnMut(),
},
SendAnnounce {
target: InterfaceId,
bytes: &'a [u8],
hops: u8,
origin: AnnounceOrigin,
},
SendToFleet {
supervisor: InterfaceKind,
fan: FanTarget,
bytes: &'a [u8],
},
SendAnnounceToFleet {
supervisor: InterfaceKind,
fan: FanTarget,
bytes: &'a [u8],
hops: u8,
origin: AnnounceOrigin,
},
EmitFrame {
target: InterfaceId,
size_hint: usize,
fill: &'a mut dyn FnMut(&mut [u8]) -> Option<usize>,
},
SendMeasuredLocalAnnounce {
target: InterfaceId,
bytes: &'a [u8],
},
SendMeasuredLocalAnnounceToFleet {
supervisor: InterfaceKind,
fan: FanTarget,
bytes: &'a [u8],
},
}Expand description
An order for something that must now happen outside the engine.
Variants§
Send
SendIfOnline
SendAnnounce
SendToFleet
SendAnnounceToFleet
EmitFrame
The driver calls fill exactly once, with at least size_hint bytes, even on a full lane (its own scratch). The engine’s bookkeeping runs inside fill.
SendMeasuredLocalAnnounce
SendMeasuredLocalAnnounceToFleet
Auto Trait Implementations§
impl<'a> !RefUnwindSafe for Directive<'a>
impl<'a> !Send for Directive<'a>
impl<'a> !Sync for Directive<'a>
impl<'a> !UnwindSafe for Directive<'a>
impl<'a> Freeze for Directive<'a>
impl<'a> Unpin for Directive<'a>
impl<'a> UnsafeUnpin for Directive<'a>
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