Struct K2KMessage
pub struct K2KMessage {
pub id: MessageId,
pub source: KernelId,
pub destination: KernelId,
pub envelope: MessageEnvelope,
pub hops: u8,
pub sent_at: HlcTimestamp,
pub priority: u8,
}Expand description
A K2K message with routing information.
Fields§
§id: MessageIdUnique message ID.
source: KernelIdSource kernel.
destination: KernelIdDestination kernel.
envelope: MessageEnvelopeThe message envelope.
hops: u8Hop count (for detecting routing loops).
sent_at: HlcTimestampTimestamp when message was sent.
priority: u8Priority (higher = more urgent).
Implementations§
§impl K2KMessage
impl K2KMessage
pub fn new(
source: KernelId,
destination: KernelId,
envelope: MessageEnvelope,
timestamp: HlcTimestamp,
) -> K2KMessage
pub fn new( source: KernelId, destination: KernelId, envelope: MessageEnvelope, timestamp: HlcTimestamp, ) -> K2KMessage
Create a new K2K message.
pub fn with_priority(self, priority: u8) -> K2KMessage
pub fn with_priority(self, priority: u8) -> K2KMessage
Create with priority.
pub fn increment_hops(&mut self) -> Result<(), RingKernelError>
pub fn increment_hops(&mut self) -> Result<(), RingKernelError>
Increment hop count.
Trait Implementations§
§impl Clone for K2KMessage
impl Clone for K2KMessage
§fn clone(&self) -> K2KMessage
fn clone(&self) -> K2KMessage
Returns a duplicate of the value. Read more
1.0.0§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 K2KMessage
impl RefUnwindSafe for K2KMessage
impl Send for K2KMessage
impl Sync for K2KMessage
impl Unpin for K2KMessage
impl UnwindSafe for K2KMessage
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
§fn deserialize(
&self,
deserializer: &mut D,
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize( &self, deserializer: &mut D, ) -> Result<With<T, W>, <D as Fallible>::Error>
Deserializes using the given deserializer
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.