1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
use std::fmt::Debug;
use crate::message::Message;
pub mod routed_destination;
pub mod kinds;
pub mod message_condition;
pub trait MessageDestination: Debug {
fn send(&self, message: &Message) -> Result<(), Box<dyn std::error::Error>>;
}
#[typetag::serde(tag = "type")]
pub trait SerializableDestination: MessageDestination {
fn as_message_destination(&self) -> &dyn MessageDestination;
}