Struct proptest::strategy::Filter
[−]
[src]
pub struct Filter<S, F> { /* fields omitted */ }
Strategy
and ValueTree
filter adaptor.
See Strategy::prop_filter()
.
Trait Implementations
impl<S: Debug, F> Debug for Filter<S, F>
[src]
impl<S: Clone, F> Clone for Filter<S, F>
[src]
fn clone(&self) -> Self
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<S: Strategy, F: Fn(&ValueFor<S>) -> bool> Strategy for Filter<S, F>
[src]
type Value = Filter<S::Value, F>
The value tree generated by this Strategy
. Read more
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
Generate a new value tree from the given runner. Read more
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F> where
Self: Sized,
[src]
Self: Sized,
Returns a strategy which produces values transformed by the function fun
. Read more
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O> where
Self: Sized,
ValueFor<Self>: Into<O>,
[src]
Self: Sized,
ValueFor<Self>: Into<O>,
Returns a strategy which produces values of type O
by transforming Self
with Into<O>
. Read more
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F> where
Self: Sized,
[src]
self,
fun: F
) -> Perturb<Self, F> where
Self: Sized,
Returns a strategy which produces values transformed by the function fun
, which is additionally given a random number generator. Read more
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>> where
Self: Sized,
[src]
self,
fun: F
) -> Flatten<Map<Self, F>> where
Self: Sized,
Maps values produced by this strategy into new strategies and picks values from those strategies. Read more
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>> where
Self: Sized,
[src]
self,
fun: F
) -> IndFlatten<Map<Self, F>> where
Self: Sized,
Maps values produced by this strategy into new strategies and picks values from those strategies while considering the new strategies to be independent. Read more
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F> where
Self: Sized,
[src]
self,
fun: F
) -> IndFlattenMap<Self, F> where
Self: Sized,
Similar to prop_ind_flat_map()
, but produces 2-tuples with the input generated from self
in slot 0 and the derived strategy in slot 1. Read more
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F> where
Self: Sized,
[src]
self,
whence: R,
fun: F
) -> Filter<Self, F> where
Self: Sized,
Returns a strategy which only produces values accepted by fun
. Read more
fn prop_union(self, other: Self) -> Union<Self> where
Self: Sized,
[src]
Self: Sized,
Returns a strategy which picks uniformly from self
and other
. Read more
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<BoxedStrategy<ValueFor<Self>>, F> where
Self: Sized + 'static,
F: Fn(Arc<BoxedStrategy<ValueFor<Self>>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<BoxedStrategy<ValueFor<Self>>, F> where
Self: Sized + 'static,
F: Fn(Arc<BoxedStrategy<ValueFor<Self>>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
ValueFor<Self>: Shuffleable,
[src]
Self: Sized,
ValueFor<Self>: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<ValueFor<Self>> where
Self: Sized + 'static,
[src]
Self: Sized + 'static,
Erases the type of this Strategy
so it can be passed around as a simple trait object. Read more
fn sboxed(self) -> SBoxedStrategy<ValueFor<Self>> where
Self: Sized + Send + Sync + 'static,
[src]
Self: Sized + Send + Sync + 'static,
Erases the type of this Strategy
so it can be passed around as a simple trait object. Read more
fn no_shrink(self) -> NoShrink<Self> where
Self: Sized,
[src]
Self: Sized,
Wraps this strategy to prevent values from being subject to shrinking. Read more
impl<S: ValueTree, F: Fn(&S::Value) -> bool> ValueTree for Filter<S, F>
[src]
type Value = S::Value
The type of the value produced by this ValueTree
.
fn current(&self) -> S::Value
[src]
Returns the current value.
fn simplify(&mut self) -> bool
[src]
Attempts to simplify the current value. Notionally, this sets the "high" value to the current value, and the current value to a "halfway point" between high and low, rounding towards low. Read more
fn complicate(&mut self) -> bool
[src]
Attempts to partially undo the last simplification. Notionally, this sets the "low" value to one plus the current value, and the current value to a "halfway point" between high and the new low, rounding towards low. Read more