Hoogle Search
Within LTS Haskell 24.10 (ghc-9.10.2)
Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.
unGenericArbitrarySingleG :: GenericArbitrarySingleG (genList :: k) a -> ageneric-random Generic.Random.DerivingVia No documentation available.
unGenericArbitraryU :: GenericArbitraryU a -> ageneric-random Generic.Random.DerivingVia No documentation available.
unGenericArbitraryUG :: GenericArbitraryUG (genList :: k) a -> ageneric-random Generic.Random.DerivingVia No documentation available.
unGenericArbitraryWith :: GenericArbitraryWith (opts :: k) (weights :: k1) a -> ageneric-random Generic.Random.DerivingVia No documentation available.
genericArbitrary' :: (GArbitrary SizedOptsDef a, BaseCase a) => Weights a -> Gen ageneric-random Generic.Random.Internal.BaseCase Decrease size to ensure termination for recursive types, looking for base cases once the size reaches 0.
genericArbitrary' (17 % 19 % 23 % ()) :: Gen a
N.B.: This replaces the generator for fields of type [t] with listOf' arbitrary instead of listOf arbitrary (i.e., arbitrary for lists).genericArbitraryU' :: (GArbitrary SizedOptsDef a, BaseCase a, GUniformWeight a) => Gen ageneric-random Generic.Random.Internal.BaseCase Equivalent to genericArbitrary' uniform.
genericArbitraryU' :: Gen a
N.B.: This replaces the generator for fields of type [t] with listOf' arbitrary instead of listOf arbitrary (i.e., arbitrary for lists).class (Generic a, GA opts Rep a) =>
GArbitrary opts ageneric-random Generic.Random.Internal.Generic Generic Arbitrary
genericArbitrary :: GArbitrary UnsizedOpts a => Weights a -> Gen ageneric-random Generic.Random.Internal.Generic Pick a constructor with a given distribution, and fill its fields with recursive calls to arbitrary.
Example
genericArbitrary (2 % 3 % 5 % ()) :: Gen a
Picks the first constructor with probability 2/10, the second with probability 3/10, the third with probability 5/10.genericArbitraryG :: GArbitrary (SetGens genList UnsizedOpts) a => genList -> Weights a -> Gen ageneric-random Generic.Random.Internal.Generic genericArbitrary with explicit generators.
Example
genericArbitraryG customGens (17 % 19 % ())
where, the generators for String and Int fields are overridden as follows, for example:customGens :: Gen String :+ Gen Int customGens = (filter (/= 'NUL') <$> arbitrary) :+ (getNonNegative <$> arbitrary)
Note on multiple matches
Multiple generators may match a given field: the first will be chosen.genericArbitraryRec :: GArbitrary SizedOptsDef a => Weights a -> Gen ageneric-random Generic.Random.Internal.Generic Decrease size at every recursive call, but don't do anything different at size 0.
genericArbitraryRec (7 % 11 % 13 % ()) :: Gen a
N.B.: This replaces the generator for fields of type [t] with listOf' arbitrary instead of listOf arbitrary (i.e., arbitrary for lists).