Struct proptest::array::UniformArrayStrategy
source · pub struct UniformArrayStrategy<S, T> { /* private fields */ }
Expand description
A Strategy
which generates fixed-size arrays containing values drawn from
an inner strategy.
T
must be an array type of length 1 to 32 whose values are produced by
strategy S
. Instances of this type are normally created by the various
uniformXX
functions in this module.
This is mainly useful when the inner strategy is not Copy
, precluding
expressing the strategy as [myStrategy; 32]
, for example.
Example
#[macro_use] extern crate proptest;
use proptest::prelude::*;
proptest! {
#[test]
fn test_something(a in prop::array::uniform32(1u32..)) {
let unexpected = [0u32;32];
// `a` is also a [u32;32], so we can compare them directly
assert_ne!(unexpected, a);
}
}
Implementations§
source§impl<S, T> UniformArrayStrategy<S, T>
impl<S, T> UniformArrayStrategy<S, T>
sourcepub fn new(strategy: S) -> Self
pub fn new(strategy: S) -> Self
Directly create a UniformArrayStrategy
.
This is only intended for advanced use, since the only way to specify the array size is with the turbofish operator and explicitly naming the type of the values in the array and the strategy itself.
Prefer the uniformXX
functions at module-level unless something
precludes their use.
Trait Implementations§
source§impl<S: Clone, T: Clone> Clone for UniformArrayStrategy<S, T>
impl<S: Clone, T: Clone> Clone for UniformArrayStrategy<S, T>
source§fn clone(&self) -> UniformArrayStrategy<S, T>
fn clone(&self) -> UniformArrayStrategy<S, T>
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 1]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 1]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 1]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 1]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 10]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 10]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 10]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 10]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 11]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 11]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 11]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 11]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 12]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 12]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 12]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 12]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 13]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 13]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 13]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 13]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 14]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 14]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 14]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 14]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 15]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 15]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 15]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 15]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 16]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 16]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 16]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 16]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 17]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 17]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 17]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 17]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 18]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 18]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 18]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 18]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 19]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 19]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 19]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 19]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 2]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 2]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 2]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 2]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 20]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 20]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 20]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 20]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 21]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 21]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 21]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 21]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 22]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 22]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 22]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 22]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 23]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 23]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 23]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 23]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 24]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 24]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 24]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 24]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 25]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 25]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 25]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 25]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 26]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 26]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 26]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 26]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 27]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 27]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 27]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 27]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 28]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 28]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 28]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 28]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 29]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 29]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 29]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 29]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 3]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 3]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 3]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 3]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 30]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 30]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 30]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 30]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 31]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 31]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 31]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 31]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 32]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 32]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 32]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 32]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 4]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 4]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 4]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 4]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 5]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 5]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 5]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 5]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 6]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 6]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 6]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 6]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 7]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 7]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 7]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 7]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 8]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 8]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 8]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 8]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read moresource§impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 9]>
impl<S: Strategy> Strategy for UniformArrayStrategy<S, [ValueFor<S>; 9]>
§type Value = ArrayValueTree<[<S as Strategy>::Value; 9]>
type Value = ArrayValueTree<[<S as Strategy>::Value; 9]>
The value tree generated by this
Strategy
. Read moresource§fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
fn new_value(&self, runner: &mut TestRunner) -> NewTree<Self>
Generate a new value tree from the given runner. Read more
source§fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
fn prop_map<O: Debug, F: Fn(ValueFor<Self>) -> O>(self, fun: F) -> Map<Self, F>where
Self: Sized,
Returns a strategy which produces values transformed by the function
fun
. Read moresource§fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
fn prop_map_into<O: Debug>(self) -> MapInto<Self, O>where
Self: Sized,
ValueFor<Self>: Into<O>,
source§fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
self,
fun: F
) -> Perturb<Self, F>where
Self: Sized,
fn prop_perturb<O: Debug, F: Fn(ValueFor<Self>, XorShiftRng) -> O>(
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 moresource§fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> Flatten<Map<Self, F>>where
Self: Sized,
fn prop_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlatten<Map<Self, F>>where
Self: Sized,
fn prop_ind_flat_map<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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
source§fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
self,
fun: F
) -> IndFlattenMap<Self, F>where
Self: Sized,
fn prop_ind_flat_map2<S: Strategy, F: Fn(ValueFor<Self>) -> S>(
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 moresource§fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
fn prop_filter<R: Into<Reason>, F: Fn(&ValueFor<Self>) -> bool>(
self,
whence: R,
fun: F
) -> Filter<Self, F>where
Self: Sized,
Returns a strategy which only produces values accepted by
fun
. Read moresource§fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
fn prop_union(self, other: Self) -> Union<Self>where
Self: Sized,
source§fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
fn prop_recursive<R, F>(
self,
depth: u32,
desired_size: u32,
expected_branch_size: u32,
recurse: F
) -> Recursive<ValueFor<Self>, F>where
Self: Sized + 'static,
F: Fn(BoxedStrategy<ValueFor<Self>>) -> R,
R: Strategy + 'static,
R::Value: ValueTree<Value = ValueFor<Self>>,
Generate a recursive structure with
self
items as leaves. Read more