use crate::actor::Cx;
use crate::actor::event_bus::builder::EventSubscription;
pub trait Handler<M: 'static>: 'static {
const DECLARED: Option<crate::actor::shape::Declared> = None;
const ANSWERS: bool = false;
fn handle(&mut self, msg: M, cx: Cx<Self, M>)
where
Self: Sized;
}
pub trait ManagedActor: Sized + 'static {
type Bus: EventSubscription<Self>;
type Signals;
type Flow;
const SHAPE: crate::actor::shape::Shape = crate::actor::shape::Shape::UNKNOWN;
}
pub trait AllowedSignal<M: 'static> {}
impl<M: 'static> AllowedSignal<M> for M {}