[−][src]Struct proptest::strategy::TupleUnion
Similar to Union
, but internally uses a tuple to hold the strategies.
This allows better performance than vanilla Union
since one does not need
to resort to boxing and dynamic dispatch to handle heterogeneous
strategies.
Deprecated in 0.9.4 in favor of LazyTupleUnion
, which the prop_oneof!
macro now uses. TupleUnion
is only kept around to avoid API breakage,
and its implementation will be replaced with LazyTupleUnion
in the next
major version.
Methods
impl<T> TupleUnion<T>
[src]
pub fn new(tuple: T) -> Self
[src]
Wrap tuple
in a TupleUnion
.
The struct definition allows any T
for tuple
, but to be useful, it
must be a 2- to 10-tuple of (u32, impl Strategy)
pairs where all
strategies ultimately produce the same value. Each u32
indicates the
relative weight of its corresponding strategy.
You may use W<S>
as an alias for (u32, S)
.
Using this constructor directly is discouraged; prefer to use
prop_oneof!
since it is generally clearer.
Trait Implementations
impl<A: Strategy, B: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>, E: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>, W<E>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>, Option<E::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>, E: Strategy<Value = A::Value>, F: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>, W<E>, W<F>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>, Option<E::Tree>, Option<F::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>, E: Strategy<Value = A::Value>, F: Strategy<Value = A::Value>, G: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>, W<E>, W<F>, W<G>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>, Option<E::Tree>, Option<F::Tree>, Option<G::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>, E: Strategy<Value = A::Value>, F: Strategy<Value = A::Value>, G: Strategy<Value = A::Value>, H: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>, W<E>, W<F>, W<G>, W<H>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>, Option<E::Tree>, Option<F::Tree>, Option<G::Tree>, Option<H::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>, E: Strategy<Value = A::Value>, F: Strategy<Value = A::Value>, G: Strategy<Value = A::Value>, H: Strategy<Value = A::Value>, I: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>, W<E>, W<F>, W<G>, W<H>, W<I>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>, Option<E::Tree>, Option<F::Tree>, Option<G::Tree>, Option<H::Tree>, Option<I::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<A: Strategy, B: Strategy<Value = A::Value>, C: Strategy<Value = A::Value>, D: Strategy<Value = A::Value>, E: Strategy<Value = A::Value>, F: Strategy<Value = A::Value>, G: Strategy<Value = A::Value>, H: Strategy<Value = A::Value>, I: Strategy<Value = A::Value>, J: Strategy<Value = A::Value>> Strategy for TupleUnion<(W<A>, W<B>, W<C>, W<D>, W<E>, W<F>, W<G>, W<H>, W<I>, W<J>)>
[src]
type Tree = TupleUnionValueTree<(A::Tree, Option<B::Tree>, Option<C::Tree>, Option<D::Tree>, Option<E::Tree>, Option<F::Tree>, Option<G::Tree>, Option<H::Tree>, Option<I::Tree>, Option<J::Tree>)>
The value tree generated by this Strategy
.
type Value = A::Value
The type of value used by functions under test generated by this Strategy. Read more
fn new_tree(&self, runner: &mut TestRunner) -> NewTree<Self>
[src]
fn prop_map<O: Debug, F: Fn(Self::Value) -> 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,
Self::Value: Into<O>,
[src]
Self: Sized,
Self::Value: 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(Self::Value, TestRng) -> 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(Self::Value) -> 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(Self::Value) -> 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(Self::Value) -> 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(&Self::Value) -> 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_filter_map<F: Fn(Self::Value) -> Option<O>, O: Debug>(
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
[src]
self,
whence: impl Into<Reason>,
fun: F
) -> FilterMap<Self, F> where
Self: Sized,
Returns a strategy which only produces transformed values where fun
returns Some(value)
and rejects those where fun
returns None
. 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: Strategy<Value = Self::Value> + 'static, F: Fn(BoxedStrategy<Self::Value>) -> R>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
[src]
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<Self::Value, F> where
Self: Sized + 'static,
Generate a recursive structure with self
items as leaves. Read more
fn prop_shuffle(self) -> Shuffle<Self> where
Self: Sized,
Self::Value: Shuffleable,
[src]
Self: Sized,
Self::Value: Shuffleable,
Shuffle the contents of the values produced by this strategy. Read more
fn boxed(self) -> BoxedStrategy<Self::Value> 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<Self::Value> 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<T: Copy> Copy for TupleUnion<T>
[src]
impl<T: Debug> Debug for TupleUnion<T>
[src]
impl<T: Clone> Clone for TupleUnion<T>
[src]
fn clone(&self) -> TupleUnion<T>
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl<T> Send for TupleUnion<T> where
T: Send,
T: Send,
impl<T> Sync for TupleUnion<T> where
T: Sync,
T: Sync,
Blanket Implementations
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,