Struct loom::model::Builder [−][src]
Configure a model
Fields
max_threads: usizeMax number of threads to check as part of the execution.
This should be set as low as possible and must be less than
MAX_THREADS.
max_branches: usizeMaximum number of thread switches per permutation.
Defaults to LOOM_MAX_BRANCHES environment variable.
max_permutations: Option<usize>Maximum number of permutations to explore.
Defaults to LOOM_MAX_PERMUTATIONS environment variable.
max_duration: Option<Duration>Maximum amount of time to spend on checking
Defaults to LOOM_MAX_DURATION environment variable.
preemption_bound: Option<usize>Maximum number of thread preemptions to explore
Defaults to LOOM_MAX_PREEMPTIONS environment variable.
checkpoint_file: Option<PathBuf>When doing an exhaustive check, uses the file to store and load the check progress
Defaults to LOOM_CHECKPOINT_FILE environment variable.
checkpoint_interval: usizeHow often to write the checkpoint file
Defaults to LOOM_CHECKPOINT_INTERVAL environment variable.
location: boolWhen true, locations are captured on each loom operation.
Note that is is very expensive. It is recommended to first isolate a
failing iteration using LOOM_CHECKPOINT_FILE, then enable location
tracking.
Defaults to LOOM_LOCATION environment variable.
log: boolLog execution output to stdout.
Defaults to existance of LOOM_LOG environment variable.
Implementations
impl Builder[src]
pub fn new() -> Builder[src]
Create a new Builder instance with default values.
pub fn checkpoint_file(&mut self, file: &str) -> &mut Self[src]
Set the checkpoint file.
pub fn check<F>(&self, f: F) where
F: Fn() + Sync + Send + 'static, [src]
F: Fn() + Sync + Send + 'static,
Check the provided model.
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for Builder
impl Send for Builder
impl Sync for Builder
impl Unpin for Builder
impl UnwindSafe for Builder
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,