pub struct InitializedPathBuilder {
ta: GeneralThresholdAutomaton,
n_processes: u32,
parameter_assignment: HashMap<Parameter, u32>,
configurations: Vec<Configuration>,
transitions: Vec<Transition>,
}Expand description
Builder for creating a validated Path of a GeneralThresholdAutomaton
that has been initialized with a threshold automaton and a parameter
assignment.
This type should always be derived from a PathBuilder.
Fields§
§ta: GeneralThresholdAutomatonThreshold automaton this path belongs to
n_processes: u32Number of processes in the path, will be initialized with the first configuration
parameter_assignment: HashMap<Parameter, u32>Parameter assignment for the path
configurations: Vec<Configuration>Configurations of the path
transitions: Vec<Transition>Transitions of the path
Implementations§
Source§impl InitializedPathBuilder
impl InitializedPathBuilder
Sourcepub fn add_configuration(
self,
config: Configuration,
) -> Result<Self, PathBuilderError>
pub fn add_configuration( self, config: Configuration, ) -> Result<Self, PathBuilderError>
Add a configuration to the path
Sourcepub fn add_configurations(
self,
configs: impl IntoIterator<Item = Configuration>,
) -> Result<Self, PathBuilderError>
pub fn add_configurations( self, configs: impl IntoIterator<Item = Configuration>, ) -> Result<Self, PathBuilderError>
Add multiple configurations to the path
Sourcepub fn add_transition(
self,
transition: Transition,
) -> Result<Self, PathBuilderError>
pub fn add_transition( self, transition: Transition, ) -> Result<Self, PathBuilderError>
Add a transition to the path
Sourcepub fn add_transitions(
self,
transitions: impl IntoIterator<Item = Transition>,
) -> Result<Self, PathBuilderError>
pub fn add_transitions( self, transitions: impl IntoIterator<Item = Transition>, ) -> Result<Self, PathBuilderError>
Add multiple transitions to the path
Sourcepub fn last_configuration(&self) -> Option<&Configuration>
pub fn last_configuration(&self) -> Option<&Configuration>
Returns the last configuration that was added to the path builder
Sourcefn validate_configuration(
&mut self,
config: &Configuration,
) -> Result<(), PathBuilderError>
fn validate_configuration( &mut self, config: &Configuration, ) -> Result<(), PathBuilderError>
Initial validation function of an inserted configuration
Sourcefn validate_initial_configuration(
&self,
config: &Configuration,
) -> Result<(), PathBuilderError>
fn validate_initial_configuration( &self, config: &Configuration, ) -> Result<(), PathBuilderError>
Validate the initial configuration of the path
Sourcepub fn build(self) -> Result<Path, PathBuilderError>
pub fn build(self) -> Result<Path, PathBuilderError>
Validate the transition and rule sequence and build the path
Sourcefn shorten_path(&mut self)
fn shorten_path(&mut self)
This function shortens an error path by combining successive applications of the same rule
It does not reorder rules
Sourcefn validate_path(&self) -> Result<(), PathBuilderError>
fn validate_path(&self) -> Result<(), PathBuilderError>
Validate the path and check that it is consistent
Trait Implementations§
Source§impl Clone for InitializedPathBuilder
impl Clone for InitializedPathBuilder
Source§fn clone(&self) -> InitializedPathBuilder
fn clone(&self) -> InitializedPathBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more