Struct boomerang_runtime::Reactor
source · pub struct Reactor {
pub actions: TinyMap<ActionKey, Action>,
/* private fields */
}
Fields§
§actions: TinyMap<ActionKey, Action>
Map of Actions for this Reactor
Implementations§
source§impl Reactor
impl Reactor
pub fn new( name: &str, state: Box<dyn ReactorState>, actions: TinyMap<ActionKey, Action>, action_triggers: TinySecondaryMap<ActionKey, Vec<LevelReactionKey>> ) -> Self
pub fn get_name(&self) -> &str
pub fn get_state<T: ReactorState>(&mut self) -> Option<&mut T>
sourcepub fn iter_startup_events(&self) -> impl Iterator<Item = &[LevelReactionKey]>
pub fn iter_startup_events(&self) -> impl Iterator<Item = &[LevelReactionKey]>
Return an Iterator
of reactions sensitive to Startup
actions.
pub fn iter_shutdown_events(&self) -> impl Iterator<Item = &[LevelReactionKey]>
pub fn cleanup(&mut self, current_tag: Tag)
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Reactor
impl Send for Reactor
impl Sync for Reactor
impl Unpin for Reactor
impl !UnwindSafe for Reactor
Blanket Implementations§
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.