-- Do not warn about the defaulting of variant function {-# OPTIONS_GHC -fno-warn-type-defaults #-} module Data.Sums.Coarbitrary where import Data.Sums import Test.QuickCheck s0 :: S0 -> Gen b -> Gen b s0 _ = variant 0 s1 :: (a -> Gen r -> Gen r) -> S1 a -> Gen r -> Gen r s1 fa = caseS1 (\a -> variant 0 . fa a) s2 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> S2 a b -> Gen r -> Gen r s2 fa fb = caseS2 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) s3 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> S3 a b c -> Gen r -> Gen r s3 fa fb fc = caseS3 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) s4 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> S4 a b c d -> Gen r -> Gen r s4 fa fb fc fd = caseS4 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) s5 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> S5 a b c d e -> Gen r -> Gen r s5 fa fb fc fd fe = caseS5 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) s6 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> S6 a b c d e f -> Gen r -> Gen r s6 fa fb fc fd fe ff = caseS6 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) s7 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> S7 a b c d e f g -> Gen r -> Gen r s7 fa fb fc fd fe ff fg = caseS7 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) s8 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> S8 a b c d e f g h -> Gen r -> Gen r s8 fa fb fc fd fe ff fg fh = caseS8 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) s9 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> S9 a b c d e f g h i -> Gen r -> Gen r s9 fa fb fc fd fe ff fg fh fi = caseS9 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) s10 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> (j -> Gen r -> Gen r) -> S10 a b c d e f g h i j -> Gen r -> Gen r s10 fa fb fc fd fe ff fg fh fi fj = caseS10 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) (\j -> variant 9 . fj j) s11 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> (j -> Gen r -> Gen r) -> (k -> Gen r -> Gen r) -> S11 a b c d e f g h i j k -> Gen r -> Gen r s11 fa fb fc fd fe ff fg fh fi fj fk = caseS11 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) (\j -> variant 9 . fj j) (\k -> variant 10 . fk k) s12 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> (j -> Gen r -> Gen r) -> (k -> Gen r -> Gen r) -> (l -> Gen r -> Gen r) -> S12 a b c d e f g h i j k l -> Gen r -> Gen r s12 fa fb fc fd fe ff fg fh fi fj fk fl = caseS12 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) (\j -> variant 9 . fj j) (\k -> variant 10 . fk k) (\l -> variant 11 . fl l) s13 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> (j -> Gen r -> Gen r) -> (k -> Gen r -> Gen r) -> (l -> Gen r -> Gen r) -> (m -> Gen r -> Gen r) -> S13 a b c d e f g h i j k l m -> Gen r -> Gen r s13 fa fb fc fd fe ff fg fh fi fj fk fl fm = caseS13 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) (\j -> variant 9 . fj j) (\k -> variant 10 . fk k) (\l -> variant 11 . fl l) (\m -> variant 12 . fm m) s14 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> (j -> Gen r -> Gen r) -> (k -> Gen r -> Gen r) -> (l -> Gen r -> Gen r) -> (m -> Gen r -> Gen r) -> (n -> Gen r -> Gen r) -> S14 a b c d e f g h i j k l m n -> Gen r -> Gen r s14 fa fb fc fd fe ff fg fh fi fj fk fl fm fn = caseS14 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) (\j -> variant 9 . fj j) (\k -> variant 10 . fk k) (\l -> variant 11 . fl l) (\m -> variant 12 . fm m) (\n -> variant 12 . fn n) s15 :: (a -> Gen r -> Gen r) -> (b -> Gen r -> Gen r) -> (c -> Gen r -> Gen r) -> (d -> Gen r -> Gen r) -> (e -> Gen r -> Gen r) -> (f -> Gen r -> Gen r) -> (g -> Gen r -> Gen r) -> (h -> Gen r -> Gen r) -> (i -> Gen r -> Gen r) -> (j -> Gen r -> Gen r) -> (k -> Gen r -> Gen r) -> (l -> Gen r -> Gen r) -> (m -> Gen r -> Gen r) -> (n -> Gen r -> Gen r) -> (o -> Gen r -> Gen r) -> S15 a b c d e f g h i j k l m n o -> Gen r -> Gen r s15 fa fb fc fd fe ff fg fh fi fj fk fl fm fn fo = caseS15 (\a -> variant 0 . fa a) (\b -> variant 1 . fb b) (\c -> variant 2 . fc c) (\d -> variant 3 . fd d) (\e -> variant 4 . fe e) (\f -> variant 5 . ff f) (\g -> variant 6 . fg g) (\h -> variant 7 . fh h) (\i -> variant 8 . fi i) (\j -> variant 9 . fj j) (\k -> variant 10 . fk k) (\l -> variant 11 . fl l) (\m -> variant 12 . fm m) (\n -> variant 12 . fn n) (\o -> variant 12 . fo o)