pub struct BorrowedSimulation<'a, Info: SimulationInfo> {
pub state: Info::State,
/* private fields */
}Expand description
A borrowed simulation that holds an immutable reference to the simulation info and owns the simulation state.
Fields§
§state: Info::StateThe simulation state.
Implementations§
Source§impl<'a, Info: SimulationInfo> BorrowedSimulation<'a, Info>
impl<'a, Info: SimulationInfo> BorrowedSimulation<'a, Info>
Trait Implementations§
Source§impl<Info: SimulationInfo + Clone> Clone for BorrowedSimulation<'_, Info>
impl<Info: SimulationInfo + Clone> Clone for BorrowedSimulation<'_, Info>
Source§impl<Info: SimulationInfo> Deref for BorrowedSimulation<'_, Info>
impl<Info: SimulationInfo> Deref for BorrowedSimulation<'_, Info>
Source§impl<Info: SimulationInfo> Simulation for BorrowedSimulation<'_, Info>
impl<Info: SimulationInfo> Simulation for BorrowedSimulation<'_, Info>
Source§type StateLoadingError = <Info as SimulationInfo>::StateLoadingError
type StateLoadingError = <Info as SimulationInfo>::StateLoadingError
The error type returned when loading the simulation state fails.
Source§type AccessData = <Info as SimulationInfo>::AccessData
type AccessData = <Info as SimulationInfo>::AccessData
The type used to access the current state.
Source§type LoadData = <Info as SimulationInfo>::LoadData
type LoadData = <Info as SimulationInfo>::LoadData
The type of data used to load the simulation state.
Source§type Event = <Info as SimulationInfo>::Event
type Event = <Info as SimulationInfo>::Event
The type of events that can be called or reverted in the simulation.
Source§type EventContainer<'a> = <Info as SimulationInfo>::EventContainer<'a>
where
Self: 'a
type EventContainer<'a> = <Info as SimulationInfo>::EventContainer<'a> where Self: 'a
The type of container used to access the available events.
Source§fn data(&self) -> &Info::AccessData
fn data(&self) -> &Info::AccessData
Returns a reference to the data which repsesents the current state.
Source§fn reload(
&mut self,
data: Info::LoadData,
) -> Result<(), Info::StateLoadingError>
fn reload( &mut self, data: Info::LoadData, ) -> Result<(), Info::StateLoadingError>
Reloads the simulation state from the provided data.
Source§fn callables(&self) -> Info::EventContainer<'_>
fn callables(&self) -> Info::EventContainer<'_>
Returns the events that can currently be called.
Source§fn revertables(&self) -> Info::EventContainer<'_>
fn revertables(&self) -> Info::EventContainer<'_>
Returns the events that can currently be reverted.
Source§fn revertable(&self, event: Info::Event) -> bool
fn revertable(&self, event: Info::Event) -> bool
Checks if the provided event can be reverted.
Source§fn try_call(&mut self, event: Self::Event) -> bool
fn try_call(&mut self, event: Self::Event) -> bool
Tries to call the provided event and returns if it was successful.
Source§fn try_revert(&mut self, event: Self::Event) -> bool
fn try_revert(&mut self, event: Self::Event) -> bool
Tries to revert the provided event and returns if it was successful.
Source§fn prepare_call(&mut self) -> CallState<'_, Self, Call>
fn prepare_call(&mut self) -> CallState<'_, Self, Call>
Prepares a safe helper to list callable elements and choose one to call.
Source§fn prepare_revert(&mut self) -> CallState<'_, Self, Revert>
fn prepare_revert(&mut self) -> CallState<'_, Self, Revert>
Prepares a safe helper to list revertable elements and choose one to revert.
Auto Trait Implementations§
impl<'a, Info> Freeze for BorrowedSimulation<'a, Info>
impl<'a, Info> RefUnwindSafe for BorrowedSimulation<'a, Info>
impl<'a, Info> Send for BorrowedSimulation<'a, Info>
impl<'a, Info> Sync for BorrowedSimulation<'a, Info>
impl<'a, Info> Unpin for BorrowedSimulation<'a, Info>
impl<'a, Info> UnwindSafe for BorrowedSimulation<'a, Info>
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