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: StateBehaviourTransitions
Implementations§
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