pub struct StateFsm {
pub reactive_instance: ReactiveEntity,
pub ty: BehaviourTypeId,
pub state: RwLock<BehaviourState>,
pub validator: StateValidator,
pub transitions: StateBehaviourTransitions,
}Fields§
§reactive_instance: ReactiveEntity§ty: BehaviourTypeId§state: RwLock<BehaviourState>§validator: StateValidator§transitions: StateBehaviourTransitionsImplementations§
Source§impl StateFsm
impl StateFsm
pub fn new( reactive_instance: ReactiveEntity, ty: BehaviourTypeId, validator: StateValidator, transitions: StateBehaviourTransitions, ) -> Self
Trait Implementations§
Source§impl BehaviourFsm<Uuid, ReactiveEntity> for StateFsm
impl BehaviourFsm<Uuid, ReactiveEntity> for StateFsm
Source§fn get_validator(&self) -> &dyn BehaviourValidator<Uuid, ReactiveEntity>
fn get_validator(&self) -> &dyn BehaviourValidator<Uuid, ReactiveEntity>
Returns the validator.
Source§fn get_transitions(&self) -> &dyn BehaviourTransitions<Uuid, ReactiveEntity>
fn get_transitions(&self) -> &dyn BehaviourTransitions<Uuid, ReactiveEntity>
Returns the validator.
§fn transition(
&self,
target_state: BehaviourState,
) -> Result<(), BehaviourTransitionError>
fn transition( &self, target_state: BehaviourState, ) -> Result<(), BehaviourTransitionError>
Executes a behaviour transition.
Auto Trait Implementations§
impl !Freeze for StateFsm
impl !RefUnwindSafe for StateFsm
impl Send for StateFsm
impl Sync for StateFsm
impl Unpin for StateFsm
impl !UnwindSafe for StateFsm
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more