macro_rules! domain_event {
($name:ident { $($variant:ident),* $(,)? }) => { ... };
}Expand description
Define a domain event enum with auto-generated name() method.
Generates an enum with:
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]fn name(&self) -> &'static strreturning the variant name as a string
ยงExample
use looprs_core::domain_event;
domain_event!(MyEvent {
Started,
Stopped,
});
assert_eq!(MyEvent::Started.name(), "Started");
assert_eq!(MyEvent::Stopped.name(), "Stopped");