Skip to main content

event_message

Macro event_message 

Source
macro_rules! event_message {
    ($s:expr) => { ... };
}
Expand description

Constructs an EventMessage with guaranteed compile-time validation.

This macro ensures that:

  • The message is validated in a const context.
  • No runtime checks are ever emitted.
  • The resulting value is as cheap as a &'static str.

Even inside non-const functions, Rust evaluates the validation inside a compile-time const item. This makes the macro strictly superior to calling EventMessage::new directly at runtime.

§Examples

use limen_core::prelude::event_message::EventMessage;
use limen_core::event_message;

let msg = event_message!("startup_complete");
println!("{}", msg.as_str());

Invalid messages cause compile-time errors:

use limen_core::prelude::event_message::EventMessage;
use limen_core::event_message;

let bad = event_message!("line1\nline2");
use limen_core::prelude::event_message::EventMessage;
use limen_core::event_message;

let too_long = event_message!(
    "12345678901234567890123456789012345678901234567890\
12345678901234567890123456789012345678901234567890\
123456789012345678901234567890"
);