anonymous-sums-tests-0.4.0.0: QuickCheck functions to accompany the anonymous-sums package

Safe HaskellSafe-Inferred

Data.Sums.Generators

Description

Each of the function in this module takes one pair for each type in the sum. The first element of the pair is an Int indicating the frequency with which constructors of this type are generated; this Int should be non-negative. The second element of the pair is the generator used for elements of this type. For example, to generate Ints about a fourth of the time and Chars about three fourths of the time:

 genS2 :: Gen (S2 Int Char)
 genS2 = s2 (1, arbitrary) (3, arbitrary)

Documentation

s2 :: (Int, Gen a) -> (Int, Gen b) -> Gen (S2 a b)Source

s3 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> Gen (S3 a b c)Source

s4 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> Gen (S4 a b c d)Source

s5 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> Gen (S5 a b c d e)Source

s6 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> Gen (S6 a b c d e f)Source

s7 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> Gen (S7 a b c d e f g)Source

s8 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> Gen (S8 a b c d e f g h)Source

s9 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> Gen (S9 a b c d e f g h i)Source

s10 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> (Int, Gen j) -> Gen (S10 a b c d e f g h i j)Source

s11 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> (Int, Gen j) -> (Int, Gen k) -> Gen (S11 a b c d e f g h i j k)Source

s12 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> (Int, Gen j) -> (Int, Gen k) -> (Int, Gen l) -> Gen (S12 a b c d e f g h i j k l)Source

s13 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> (Int, Gen j) -> (Int, Gen k) -> (Int, Gen l) -> (Int, Gen m) -> Gen (S13 a b c d e f g h i j k l m)Source

s14 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> (Int, Gen j) -> (Int, Gen k) -> (Int, Gen l) -> (Int, Gen m) -> (Int, Gen n) -> Gen (S14 a b c d e f g h i j k l m n)Source

s15 :: (Int, Gen a) -> (Int, Gen b) -> (Int, Gen c) -> (Int, Gen d) -> (Int, Gen e) -> (Int, Gen f) -> (Int, Gen g) -> (Int, Gen h) -> (Int, Gen i) -> (Int, Gen j) -> (Int, Gen k) -> (Int, Gen l) -> (Int, Gen m) -> (Int, Gen n) -> (Int, Gen o) -> Gen (S15 a b c d e f g h i j k l m n o)Source