pub trait Arbitrary: Sized + Debug {
type Parameters: Default;
type Strategy: Strategy<Value = Self::ValueTree>;
type ValueTree: ValueTree<Value = Self>;
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy;
fn arbitrary() -> Self::Strategy { ... }
}
Expand description
Arbitrary determines a canonical Strategy
for the implementing type.
It provides the method arbitrary_with
which generates a Strategy
for
producing arbitrary values of the implementing type (Self
). In general,
these strategies will produce the entire set of values possible for the
type, up to some size limitation or constraints set by their parameters.
When this is not desired, strategies to produce the desired values can be
built by combining Strategy
s as described in the crate documentation.
This trait analogous to
Haskell QuickCheck’s implementation of Arbitrary
.
In this interpretation of Arbitrary
, Strategy
is the equivalent of
the Gen
monad. Unlike in QuickCheck, Arbitrary
is not a core component;
types do not need to implement Arbitrary
unless one wants to use
any
or other free functions in this module.
Arbitrary
currently only works for types which represent owned data as
opposed to borrowed data. This is a fundamental restriction of proptest
which may be lifted in the future as the generic associated types (GAT)
feature of Rust is implemented and stabilized.
Required Associated Types§
sourcetype Parameters: Default
type Parameters: Default
The type of parameters that arbitrary_with
accepts for configuration
of the generated Strategy
. Parameters must implement Default
.
Required Methods§
sourcefn arbitrary_with(args: Self::Parameters) -> Self::Strategy
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
Provided Methods§
sourcefn arbitrary() -> Self::Strategy
fn arbitrary() -> Self::Strategy
Generates a Strategy
for producing arbitrary values
of type the implementing type (Self
).
Calling this for the type X
is the equivalent of using
X::arbitrary_with(Default::default())
.
This method is defined in the trait for optimization for the default if you want to do that. It is a logic error to not preserve the semantics when overriding.
Implementations on Foreign Types§
source§impl Arbitrary for char
impl Arbitrary for char
type ValueTree = <<char as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = CharStrategy<'static>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 1]
impl<A: Arbitrary> Arbitrary for [A; 1]
type ValueTree = <<[A; 1] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 1]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 2]
impl<A: Arbitrary> Arbitrary for [A; 2]
type ValueTree = <<[A; 2] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 2]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 3]
impl<A: Arbitrary> Arbitrary for [A; 3]
type ValueTree = <<[A; 3] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 3]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 4]
impl<A: Arbitrary> Arbitrary for [A; 4]
type ValueTree = <<[A; 4] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 4]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 5]
impl<A: Arbitrary> Arbitrary for [A; 5]
type ValueTree = <<[A; 5] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 5]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 6]
impl<A: Arbitrary> Arbitrary for [A; 6]
type ValueTree = <<[A; 6] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 6]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 7]
impl<A: Arbitrary> Arbitrary for [A; 7]
type ValueTree = <<[A; 7] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 7]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 8]
impl<A: Arbitrary> Arbitrary for [A; 8]
type ValueTree = <<[A; 8] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 8]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 9]
impl<A: Arbitrary> Arbitrary for [A; 9]
type ValueTree = <<[A; 9] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 9]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 10]
impl<A: Arbitrary> Arbitrary for [A; 10]
type ValueTree = <<[A; 10] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 10]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 11]
impl<A: Arbitrary> Arbitrary for [A; 11]
type ValueTree = <<[A; 11] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 11]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 12]
impl<A: Arbitrary> Arbitrary for [A; 12]
type ValueTree = <<[A; 12] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 12]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 13]
impl<A: Arbitrary> Arbitrary for [A; 13]
type ValueTree = <<[A; 13] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 13]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 14]
impl<A: Arbitrary> Arbitrary for [A; 14]
type ValueTree = <<[A; 14] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 14]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 15]
impl<A: Arbitrary> Arbitrary for [A; 15]
type ValueTree = <<[A; 15] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 15]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 16]
impl<A: Arbitrary> Arbitrary for [A; 16]
type ValueTree = <<[A; 16] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 16]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 17]
impl<A: Arbitrary> Arbitrary for [A; 17]
type ValueTree = <<[A; 17] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 17]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 18]
impl<A: Arbitrary> Arbitrary for [A; 18]
type ValueTree = <<[A; 18] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 18]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 19]
impl<A: Arbitrary> Arbitrary for [A; 19]
type ValueTree = <<[A; 19] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 19]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 20]
impl<A: Arbitrary> Arbitrary for [A; 20]
type ValueTree = <<[A; 20] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 20]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 21]
impl<A: Arbitrary> Arbitrary for [A; 21]
type ValueTree = <<[A; 21] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 21]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 22]
impl<A: Arbitrary> Arbitrary for [A; 22]
type ValueTree = <<[A; 22] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 22]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 23]
impl<A: Arbitrary> Arbitrary for [A; 23]
type ValueTree = <<[A; 23] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 23]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 24]
impl<A: Arbitrary> Arbitrary for [A; 24]
type ValueTree = <<[A; 24] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 24]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 25]
impl<A: Arbitrary> Arbitrary for [A; 25]
type ValueTree = <<[A; 25] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 25]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 26]
impl<A: Arbitrary> Arbitrary for [A; 26]
type ValueTree = <<[A; 26] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 26]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 27]
impl<A: Arbitrary> Arbitrary for [A; 27]
type ValueTree = <<[A; 27] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 27]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 28]
impl<A: Arbitrary> Arbitrary for [A; 28]
type ValueTree = <<[A; 28] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 28]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 29]
impl<A: Arbitrary> Arbitrary for [A; 29]
type ValueTree = <<[A; 29] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 29]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 30]
impl<A: Arbitrary> Arbitrary for [A; 30]
type ValueTree = <<[A; 30] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 30]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 31]
impl<A: Arbitrary> Arbitrary for [A; 31]
type ValueTree = <<[A; 31] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 31]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for [A; 32]
impl<A: Arbitrary> Arbitrary for [A; 32]
type ValueTree = <<[A; 32] as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = UniformArrayStrategy<<A as Arbitrary>::Strategy, [A; 32]>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary> Arbitrary for (T0,)
impl<T0: Arbitrary> Arbitrary for (T0,)
type ValueTree = <<(T0,) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters,)
type Strategy = (<T0 as Arbitrary>::Strategy,)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary> Arbitrary for (T0, T1)
impl<T0: Arbitrary, T1: Arbitrary> Arbitrary for (T0, T1)
type ValueTree = <<(T0, T1) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary> Arbitrary for (T0, T1, T2)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary> Arbitrary for (T0, T1, T2)
type ValueTree = <<(T0, T1, T2) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary> Arbitrary for (T0, T1, T2, T3)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary> Arbitrary for (T0, T1, T2, T3)
type ValueTree = <<(T0, T1, T2, T3) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4)
type ValueTree = <<(T0, T1, T2, T3, T4) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters, <T4 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy, <T4 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5)
type ValueTree = <<(T0, T1, T2, T3, T4, T5) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters, <T4 as Arbitrary>::Parameters, <T5 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy, <T4 as Arbitrary>::Strategy, <T5 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6)
type ValueTree = <<(T0, T1, T2, T3, T4, T5, T6) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters, <T4 as Arbitrary>::Parameters, <T5 as Arbitrary>::Parameters, <T6 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy, <T4 as Arbitrary>::Strategy, <T5 as Arbitrary>::Strategy, <T6 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary, T7: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6, T7)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary, T7: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6, T7)
type ValueTree = <<(T0, T1, T2, T3, T4, T5, T6, T7) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters, <T4 as Arbitrary>::Parameters, <T5 as Arbitrary>::Parameters, <T6 as Arbitrary>::Parameters, <T7 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy, <T4 as Arbitrary>::Strategy, <T5 as Arbitrary>::Strategy, <T6 as Arbitrary>::Strategy, <T7 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary, T7: Arbitrary, T8: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary, T7: Arbitrary, T8: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6, T7, T8)
type ValueTree = <<(T0, T1, T2, T3, T4, T5, T6, T7, T8) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters, <T4 as Arbitrary>::Parameters, <T5 as Arbitrary>::Parameters, <T6 as Arbitrary>::Parameters, <T7 as Arbitrary>::Parameters, <T8 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy, <T4 as Arbitrary>::Strategy, <T5 as Arbitrary>::Strategy, <T6 as Arbitrary>::Strategy, <T7 as Arbitrary>::Strategy, <T8 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary, T7: Arbitrary, T8: Arbitrary, T9: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
impl<T0: Arbitrary, T1: Arbitrary, T2: Arbitrary, T3: Arbitrary, T4: Arbitrary, T5: Arbitrary, T6: Arbitrary, T7: Arbitrary, T8: Arbitrary, T9: Arbitrary> Arbitrary for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9)
type ValueTree = <<(T0, T1, T2, T3, T4, T5, T6, T7, T8, T9) as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<T0 as Arbitrary>::Parameters, <T1 as Arbitrary>::Parameters, <T2 as Arbitrary>::Parameters, <T3 as Arbitrary>::Parameters, <T4 as Arbitrary>::Parameters, <T5 as Arbitrary>::Parameters, <T6 as Arbitrary>::Parameters, <T7 as Arbitrary>::Parameters, <T8 as Arbitrary>::Parameters, <T9 as Arbitrary>::Parameters)
type Strategy = (<T0 as Arbitrary>::Strategy, <T1 as Arbitrary>::Strategy, <T2 as Arbitrary>::Strategy, <T3 as Arbitrary>::Strategy, <T4 as Arbitrary>::Strategy, <T5 as Arbitrary>::Strategy, <T6 as Arbitrary>::Strategy, <T7 as Arbitrary>::Strategy, <T8 as Arbitrary>::Strategy, <T9 as Arbitrary>::Strategy)
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for EscapeDefault
impl Arbitrary for EscapeDefault
type ValueTree = <<EscapeDefault as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<<u8 as Arbitrary>::Strategy, fn(_: u8) -> EscapeDefault>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for UnsafeCell<A>
impl<A: Arbitrary> Arbitrary for UnsafeCell<A>
type ValueTree = <<UnsafeCell<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = MapInto<<A as Arbitrary>::Strategy, UnsafeCell<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for BorrowError
impl Arbitrary for BorrowError
type ValueTree = <<BorrowError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = LazyJust<BorrowError, fn() -> BorrowError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for BorrowMutError
impl Arbitrary for BorrowMutError
type ValueTree = <<BorrowMutError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = LazyJust<BorrowMutError, fn() -> BorrowMutError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for EscapeDebug
impl Arbitrary for EscapeDebug
type ValueTree = <<EscapeDebug as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<<char as Arbitrary>::Strategy, fn(_: char) -> EscapeDebug>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for EscapeDefault
impl Arbitrary for EscapeDefault
type ValueTree = <<EscapeDefault as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<<char as Arbitrary>::Strategy, fn(_: char) -> EscapeDefault>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for EscapeUnicode
impl Arbitrary for EscapeUnicode
type ValueTree = <<EscapeUnicode as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<<char as Arbitrary>::Strategy, fn(_: char) -> EscapeUnicode>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for ParseCharError
impl Arbitrary for ParseCharError
type ValueTree = <<ParseCharError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = IndFlatten<Map<<bool as Arbitrary>::Strategy, fn(_: bool) -> Just<ParseCharError>>>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for DecodeUtf16Error
impl Arbitrary for DecodeUtf16Error
source§impl<A: Arbitrary> Arbitrary for Vec<A>
impl<A: Arbitrary> Arbitrary for Vec<A>
type ValueTree = <<Vec<A, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters)
type Strategy = VecStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for VecDeque<A>
impl<A: Arbitrary> Arbitrary for VecDeque<A>
type ValueTree = <<VecDeque<A, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters)
type Strategy = VecDequeStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for LinkedList<A>
impl<A: Arbitrary> Arbitrary for LinkedList<A>
type ValueTree = <<LinkedList<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters)
type Strategy = LinkedListStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Ord> Arbitrary for BTreeSet<A>
impl<A: Arbitrary + Ord> Arbitrary for BTreeSet<A>
type ValueTree = <<BTreeSet<A, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters)
type Strategy = BTreeSetStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Ord> Arbitrary for BinaryHeap<A>
impl<A: Arbitrary + Ord> Arbitrary for BinaryHeap<A>
type ValueTree = <<BinaryHeap<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters)
type Strategy = BinaryHeapStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Hash + Eq> Arbitrary for HashSet<A>
impl<A: Arbitrary + Hash + Eq> Arbitrary for HashSet<A>
type ValueTree = <<HashSet<A, RandomState> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters)
type Strategy = HashSetStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for IntoIter<A>
impl<A: Arbitrary> Arbitrary for IntoIter<A>
type ValueTree = <<IntoIter<A, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <Vec<A, Global> as Arbitrary>::Parameters
type Strategy = Map<<Vec<A, Global> as Arbitrary>::Strategy, fn(_: Vec<A, Global>) -> IntoIter<A, Global>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for IntoIter<A>
impl<A: Arbitrary> Arbitrary for IntoIter<A>
type ValueTree = <<IntoIter<A, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <VecDeque<A, Global> as Arbitrary>::Parameters
type Strategy = Map<<VecDeque<A, Global> as Arbitrary>::Strategy, fn(_: VecDeque<A, Global>) -> IntoIter<A, Global>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for IntoIter<A>
impl<A: Arbitrary> Arbitrary for IntoIter<A>
type ValueTree = <<IntoIter<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <LinkedList<A> as Arbitrary>::Parameters
type Strategy = Map<<LinkedList<A> as Arbitrary>::Strategy, fn(_: LinkedList<A>) -> IntoIter<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Ord> Arbitrary for IntoIter<A>
impl<A: Arbitrary + Ord> Arbitrary for IntoIter<A>
type ValueTree = <<IntoIter<A, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <BTreeSet<A, Global> as Arbitrary>::Parameters
type Strategy = Map<<BTreeSet<A, Global> as Arbitrary>::Strategy, fn(_: BTreeSet<A, Global>) -> IntoIter<A, Global>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Ord> Arbitrary for IntoIter<A>
impl<A: Arbitrary + Ord> Arbitrary for IntoIter<A>
type ValueTree = <<IntoIter<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <BinaryHeap<A> as Arbitrary>::Parameters
type Strategy = Map<<BinaryHeap<A> as Arbitrary>::Strategy, fn(_: BinaryHeap<A>) -> IntoIter<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Hash + Eq> Arbitrary for IntoIter<A>
impl<A: Arbitrary + Hash + Eq> Arbitrary for IntoIter<A>
type ValueTree = <<IntoIter<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <HashSet<A, RandomState> as Arbitrary>::Parameters
type Strategy = Map<<HashSet<A, RandomState> as Arbitrary>::Strategy, fn(_: HashSet<A, RandomState>) -> IntoIter<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Hash + Eq, B: Arbitrary> Arbitrary for HashMap<A, B>
impl<A: Arbitrary + Hash + Eq, B: Arbitrary> Arbitrary for HashMap<A, B>
type ValueTree = <<HashMap<A, B, RandomState> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters, <B as Arbitrary>::Parameters)
type Strategy = HashMapStrategy<<A as Arbitrary>::Strategy, <B as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Hash + Eq, B: Arbitrary> Arbitrary for IntoIter<A, B>
impl<A: Arbitrary + Hash + Eq, B: Arbitrary> Arbitrary for IntoIter<A, B>
type ValueTree = <<IntoIter<A, B> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <HashMap<A, B, RandomState> as Arbitrary>::Parameters
type Strategy = Map<<HashMap<A, B, RandomState> as Arbitrary>::Strategy, fn(_: HashMap<A, B, RandomState>) -> IntoIter<A, B>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Ord, B: Arbitrary> Arbitrary for BTreeMap<A, B>
impl<A: Arbitrary + Ord, B: Arbitrary> Arbitrary for BTreeMap<A, B>
type ValueTree = <<BTreeMap<A, B, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (SizeRange, <A as Arbitrary>::Parameters, <B as Arbitrary>::Parameters)
type Strategy = BTreeMapStrategy<<A as Arbitrary>::Strategy, <B as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Ord, B: Arbitrary> Arbitrary for IntoIter<A, B>
impl<A: Arbitrary + Ord, B: Arbitrary> Arbitrary for IntoIter<A, B>
type ValueTree = <<IntoIter<A, B, Global> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <BTreeMap<A, B, Global> as Arbitrary>::Parameters
type Strategy = Map<<BTreeMap<A, B, Global> as Arbitrary>::Strategy, fn(_: BTreeMap<A, B, Global>) -> IntoIter<A, B, Global>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for Bound<A>
impl<A: Arbitrary> Arbitrary for Bound<A>
type ValueTree = <<Bound<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = TupleUnion<((u32, Map<Arc<<A as Arbitrary>::Strategy>, fn(_: <<Arc<<A as Arbitrary>::Strategy> as Strategy>::Value as ValueTree>::Value) -> Bound<A>>), (u32, Map<Arc<<A as Arbitrary>::Strategy>, fn(_: <<Arc<<A as Arbitrary>::Strategy> as Strategy>::Value as ValueTree>::Value) -> Bound<A>>), (u32, LazyJust<Bound<A>, fn() -> Bound<A>>))>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for JoinPathsError
impl Arbitrary for JoinPathsError
type ValueTree = <<JoinPathsError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = LazyJust<JoinPathsError, fn() -> JoinPathsError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for VarError
impl Arbitrary for VarError
type ValueTree = <<VarError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = TupleUnion<((u32, Just<VarError>), (u32, Map<BoxedStrategy<OsString>, fn(_: <<BoxedStrategy<OsString> as Strategy>::Value as ValueTree>::Value) -> VarError>))>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for FromBytesWithNulError
impl Arbitrary for FromBytesWithNulError
source§impl Arbitrary for IntoStringError
impl Arbitrary for IntoStringError
type ValueTree = <<IntoStringError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<BoxedStrategy<Vec<u8, Global>>, fn(_: <<BoxedStrategy<Vec<u8, Global>> as Strategy>::Value as ValueTree>::Value) -> IntoStringError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for DirBuilder
impl Arbitrary for DirBuilder
type ValueTree = <<DirBuilder as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<<bool as Arbitrary>::Strategy, fn(_: bool) -> DirBuilder>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<H: Default + Hasher> Arbitrary for BuildHasherDefault<H>
impl<H: Default + Hasher> Arbitrary for BuildHasherDefault<H>
type ValueTree = <<BuildHasherDefault<H> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<BuildHasherDefault<H>>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for DefaultHasher
impl Arbitrary for DefaultHasher
type ValueTree = <<DefaultHasher as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = LazyJust<DefaultHasher, fn() -> DefaultHasher>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for RandomState
impl Arbitrary for RandomState
type ValueTree = <<RandomState as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = LazyJust<RandomState, fn() -> RandomState>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary + Write> Arbitrary for LineWriter<A>
impl<A: Arbitrary + Write> Arbitrary for LineWriter<A>
type ValueTree = <<LineWriter<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = Map<<(A, Option<u16>) as Arbitrary>::Strategy, fn(_: (A, Option<u16>)) -> LineWriter<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Read + Arbitrary, B: Read + Arbitrary> Arbitrary for Chain<A, B>
impl<A: Read + Arbitrary, B: Read + Arbitrary> Arbitrary for Chain<A, B>
type ValueTree = <<Chain<A, B> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<A as Arbitrary>::Parameters, <B as Arbitrary>::Parameters)
type Strategy = Map<<(A, B) as Arbitrary>::Strategy, fn(_: (A, B)) -> Chain<A, B>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for SeekFrom
impl Arbitrary for SeekFrom
type ValueTree = <<SeekFrom as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = TupleUnion<((u32, Map<<u64 as Arbitrary>::Strategy, fn(_: u64) -> SeekFrom>), (u32, Map<<i64 as Arbitrary>::Strategy, fn(_: i64) -> SeekFrom>), (u32, Map<<i64 as Arbitrary>::Strategy, fn(_: i64) -> SeekFrom>))>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<T, A: Arbitrary + Iterator<Item = T>, B: Arbitrary + Iterator<Item = T>> Arbitrary for Chain<A, B>
impl<T, A: Arbitrary + Iterator<Item = T>, B: Arbitrary + Iterator<Item = T>> Arbitrary for Chain<A, B>
type ValueTree = <<Chain<A, B> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (<A as Arbitrary>::Parameters, <B as Arbitrary>::Parameters)
type Strategy = Map<<(A, B) as Arbitrary>::Strategy, fn(_: (A, B)) -> Chain<A, B>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<T: ?Sized> Arbitrary for PhantomData<T>
impl<T: ?Sized> Arbitrary for PhantomData<T>
type ValueTree = <<PhantomData<T> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<PhantomData<T>>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for Discriminant<A>
impl<A: Arbitrary> Arbitrary for Discriminant<A>
type ValueTree = <<Discriminant<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = Map<<A as Arbitrary>::Strategy, fn(_: A) -> Discriminant<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for AddrParseError
impl Arbitrary for AddrParseError
type ValueTree = <<AddrParseError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<AddrParseError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for Ipv6Addr
impl Arbitrary for Ipv6Addr
type ValueTree = <<Ipv6Addr as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = TupleUnion<((u32, Map<<Ipv4Addr as Arbitrary>::Strategy, fn(_: Ipv4Addr) -> Ipv6Addr>), (u32, MapInto<<[u16; 8] as Arbitrary>::Strategy, Ipv6Addr>))>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for SocketAddrV4
impl Arbitrary for SocketAddrV4
source§impl Arbitrary for SocketAddrV6
impl Arbitrary for SocketAddrV6
source§impl Arbitrary for IpAddr
impl Arbitrary for IpAddr
type ValueTree = <<IpAddr as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = TupleUnion<((u32, MapInto<<Ipv4Addr as Arbitrary>::Strategy, IpAddr>), (u32, MapInto<<Ipv6Addr as Arbitrary>::Strategy, IpAddr>))>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for SocketAddr
impl Arbitrary for SocketAddr
type ValueTree = <<SocketAddr as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = TupleUnion<((u32, MapInto<<SocketAddrV4 as Arbitrary>::Strategy, SocketAddr>), (u32, MapInto<<SocketAddrV6 as Arbitrary>::Strategy, SocketAddr>))>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for ParseFloatError
impl Arbitrary for ParseFloatError
type ValueTree = <<ParseFloatError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<ParseFloatError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for ParseIntError
impl Arbitrary for ParseIntError
type ValueTree = <<ParseIntError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<ParseIntError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for FpCategory
impl Arbitrary for FpCategory
type ValueTree = <<FpCategory as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = TupleUnion<((u32, Just<FpCategory>), (u32, Just<FpCategory>), (u32, Just<FpCategory>), (u32, Just<FpCategory>), (u32, Just<FpCategory>))>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for Option<ParseError>
impl Arbitrary for Option<ParseError>
type ValueTree = <<Option<Infallible> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<Option<Infallible>>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for Option<A>
impl<A: Arbitrary> Arbitrary for Option<A>
type ValueTree = <<Option<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (Probability, <A as Arbitrary>::Parameters)
type Strategy = OptionStrategy<<A as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for AssertUnwindSafe<A>
impl<A: Arbitrary> Arbitrary for AssertUnwindSafe<A>
type ValueTree = <<AssertUnwindSafe<A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = Map<<A as Arbitrary>::Strategy, fn(_: A) -> AssertUnwindSafe<A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for StripPrefixError
impl Arbitrary for StripPrefixError
type ValueTree = <<StripPrefixError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<StripPrefixError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for Result<A, ParseError>
impl<A: Arbitrary> Arbitrary for Result<A, ParseError>
type ValueTree = <<Result<A, Infallible> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = Map<<A as Arbitrary>::Strategy, fn(_: A) -> Result<A, Infallible>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary> Arbitrary for Result<ParseError, A>
impl<A: Arbitrary> Arbitrary for Result<ParseError, A>
type ValueTree = <<Result<Infallible, A> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = <A as Arbitrary>::Parameters
type Strategy = Map<<A as Arbitrary>::Strategy, fn(_: A) -> Result<Infallible, A>>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl<A: Arbitrary, B: Arbitrary> Arbitrary for Result<A, B>
impl<A: Arbitrary, B: Arbitrary> Arbitrary for Result<A, B>
type ValueTree = <<Result<A, B> as Arbitrary>::Strategy as Strategy>::Value
type Parameters = (Probability, <A as Arbitrary>::Parameters, <B as Arbitrary>::Parameters)
type Strategy = MaybeOk<<A as Arbitrary>::Strategy, <B as Arbitrary>::Strategy>
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for ParseBoolError
impl Arbitrary for ParseBoolError
type ValueTree = <<ParseBoolError as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Just<ParseBoolError>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for Utf8Error
impl Arbitrary for Utf8Error
type ValueTree = <<Utf8Error as Arbitrary>::Strategy as Strategy>::Value
type Parameters = ()
type Strategy = Map<(<u16 as Arbitrary>::Strategy, TupleUnion<((u32, Just<&'static [u8]>), (u32, Just<&'static [u8]>), (u32, Just<&'static [u8]>), (u32, Just<&'static [u8]>))>), fn(_: <<(<u16 as Arbitrary>::Strategy, TupleUnion<((u32, Just<&'static [u8]>), (u32, Just<&'static [u8]>), (u32, Just<&'static [u8]>), (u32, Just<&'static [u8]>))>) as Strategy>::Value as ValueTree>::Value) -> Utf8Error>
fn arbitrary_with(_args: Self::Parameters) -> Self::Strategy
source§impl Arbitrary for String
impl Arbitrary for String
source§fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
fn arbitrary_with(args: Self::Parameters) -> Self::Strategy
Safety
This implementation panics if the input is not a valid regex proptest can handle.