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§
Source§impl K2KMessage
impl K2KMessage
Sourcepub fn new(
source: KernelId,
destination: KernelId,
envelope: MessageEnvelope,
timestamp: HlcTimestamp,
) -> Self
pub fn new( source: KernelId, destination: KernelId, envelope: MessageEnvelope, timestamp: HlcTimestamp, ) -> Self
Create a new K2K message.
Sourcepub fn with_priority(self, priority: u8) -> Self
pub fn with_priority(self, priority: u8) -> Self
Create with priority.
Sourcepub fn increment_hops(&mut self) -> Result<()>
pub fn increment_hops(&mut self) -> Result<()>
Increment hop count.
Trait Implementations§
Source§impl Clone for K2KMessage
impl Clone for K2KMessage
Source§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> 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.