pub enum MessageKind {
Event,
State,
Command,
Query,
Alert,
}Expand description
Semantic message classification for network routing and LLM integration
Each kind has different routing, priority, and LLM processing characteristics:
- Event: Asynchronous notifications (sensor data, telemetry, user actions)
- State: System/component state snapshots (health status, metrics)
- Command: Imperative actions (“start motor”, “deploy model”)
- Query: Information requests (“get current temperature”)
- Alert: Critical warnings (health/safety/security)
§Examples
use lnmp_net::MessageKind;
let kind = MessageKind::Event;
assert_eq!(kind.to_string(), "Event");
assert_eq!(kind.default_priority(), 100);
assert_eq!(kind.default_ttl_ms(), 5000);Variants§
Event
Sensor data, telemetry, system events
State
Component/system state snapshots
Command
Imperative actions (“do this”)
Query
Information requests (“give me data”)
Alert
Critical health/safety/security warnings
Implementations§
Source§impl MessageKind
impl MessageKind
Sourcepub fn is_command(&self) -> bool
pub fn is_command(&self) -> bool
Returns true if this is a Command message
Sourcepub fn default_priority(&self) -> u8
pub fn default_priority(&self) -> u8
Returns the default priority for this message kind (0-255)
Priority ranges:
- Alert: 255 (critical)
- Command: 150 (high)
- Query: 120 (medium-high)
- State: 100 (medium)
- Event: 100 (medium)
Sourcepub fn default_ttl_ms(&self) -> u32
pub fn default_ttl_ms(&self) -> u32
Returns the default TTL (time-to-live) in milliseconds
TTL ranges:
- Alert: 1000ms (1s - urgent)
- Command: 2000ms (2s - timely execution)
- Query: 5000ms (5s - quick response)
- State: 10000ms (10s - snapshot validity)
- Event: 5000ms (5s - real-time relevance)
Sourcepub fn all() -> [MessageKind; 5]
pub fn all() -> [MessageKind; 5]
Returns all message kinds as an array
Trait Implementations§
Source§impl Clone for MessageKind
impl Clone for MessageKind
Source§fn clone(&self) -> MessageKind
fn clone(&self) -> MessageKind
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MessageKind
impl Debug for MessageKind
Source§impl Default for MessageKind
impl Default for MessageKind
Source§fn default() -> MessageKind
fn default() -> MessageKind
Returns the “default value” for a type. Read more
Source§impl Display for MessageKind
impl Display for MessageKind
Source§impl FromStr for MessageKind
impl FromStr for MessageKind
Source§impl Hash for MessageKind
impl Hash for MessageKind
Source§impl PartialEq for MessageKind
impl PartialEq for MessageKind
impl Copy for MessageKind
impl Eq for MessageKind
impl StructuralPartialEq for MessageKind
Auto Trait Implementations§
impl Freeze for MessageKind
impl RefUnwindSafe for MessageKind
impl Send for MessageKind
impl Sync for MessageKind
impl Unpin for MessageKind
impl UnwindSafe for MessageKind
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.