-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Simple type-level combinators for augmenting -- QuickCheck instances. -- -- Simply wrap the type you want to generate (assuming it satisfies all -- the necessary constraints) to refine the terms generated: -- --
--   {-# LANGUAGE DataKinds #-}
--   
--   import Data.Set (Set)
--   import Test.QuickCheck
--   import Test.QuickCheck.Instances
--   import GHC.TypeLits
--   
--   instance Arbitrary LinearEquation where
--     arbitrary = do
--       vars <- arbitrary :: Gen (AtLeast 3 Set String)
--       -- ...
--   
@package quickcheck-combinators @version 0.0.3 module Test.QuickCheck.Combinators -- | Generate with a minimum, inclusive size as n :: Nat newtype AtLeast (n :: Nat) t a AtLeast :: t a -> AtLeast t a [getAtLeast] :: AtLeast t a -> t a -- | Generate with a maximum, inclusive size as n :: Nat newtype AtMost (n :: Nat) t a AtMost :: t a -> AtMost t a [getAtMost] :: AtMost t a -> t a -- | Generate between the inclusive range of n :: Nat and m :: -- Nat newtype Between (n :: Nat) (m :: Nat) t a Between :: t a -> Between t a [getBetween] :: Between t a -> t a -- | Convenience for AtLeast 1 type NonMempty = AtLeast 1 instance GHC.Base.Monoid (t a) => GHC.Base.Monoid (Test.QuickCheck.Combinators.Between n m t a) instance Data.Traversable.Traversable t => Data.Traversable.Traversable (Test.QuickCheck.Combinators.Between n m t) instance Data.Foldable.Foldable t => Data.Foldable.Foldable (Test.QuickCheck.Combinators.Between n m t) instance GHC.Base.Monad t => GHC.Base.Monad (Test.QuickCheck.Combinators.Between n m t) instance GHC.Base.Applicative t => GHC.Base.Applicative (Test.QuickCheck.Combinators.Between n m t) instance GHC.Base.Functor t => GHC.Base.Functor (Test.QuickCheck.Combinators.Between n m t) instance GHC.Generics.Generic (Test.QuickCheck.Combinators.Between n m t a) instance (Data.Data.Data (t a), Data.Typeable.Internal.Typeable a, Data.Typeable.Internal.Typeable t, GHC.TypeNats.KnownNat m, GHC.TypeNats.KnownNat n) => Data.Data.Data (Test.QuickCheck.Combinators.Between n m t a) instance GHC.Enum.Enum (t a) => GHC.Enum.Enum (Test.QuickCheck.Combinators.Between n m t a) instance GHC.Classes.Ord (t a) => GHC.Classes.Ord (Test.QuickCheck.Combinators.Between n m t a) instance GHC.Classes.Eq (t a) => GHC.Classes.Eq (Test.QuickCheck.Combinators.Between n m t a) instance GHC.Read.Read (t a) => GHC.Read.Read (Test.QuickCheck.Combinators.Between n m t a) instance GHC.Show.Show (t a) => GHC.Show.Show (Test.QuickCheck.Combinators.Between n m t a) instance GHC.Base.Monoid (t a) => GHC.Base.Monoid (Test.QuickCheck.Combinators.AtMost n t a) instance Data.Traversable.Traversable t => Data.Traversable.Traversable (Test.QuickCheck.Combinators.AtMost n t) instance Data.Foldable.Foldable t => Data.Foldable.Foldable (Test.QuickCheck.Combinators.AtMost n t) instance GHC.Base.Monad t => GHC.Base.Monad (Test.QuickCheck.Combinators.AtMost n t) instance GHC.Base.Applicative t => GHC.Base.Applicative (Test.QuickCheck.Combinators.AtMost n t) instance GHC.Base.Functor t => GHC.Base.Functor (Test.QuickCheck.Combinators.AtMost n t) instance GHC.Generics.Generic (Test.QuickCheck.Combinators.AtMost n t a) instance (Data.Data.Data (t a), Data.Typeable.Internal.Typeable a, Data.Typeable.Internal.Typeable t, GHC.TypeNats.KnownNat n) => Data.Data.Data (Test.QuickCheck.Combinators.AtMost n t a) instance GHC.Enum.Enum (t a) => GHC.Enum.Enum (Test.QuickCheck.Combinators.AtMost n t a) instance GHC.Classes.Ord (t a) => GHC.Classes.Ord (Test.QuickCheck.Combinators.AtMost n t a) instance GHC.Classes.Eq (t a) => GHC.Classes.Eq (Test.QuickCheck.Combinators.AtMost n t a) instance GHC.Read.Read (t a) => GHC.Read.Read (Test.QuickCheck.Combinators.AtMost n t a) instance GHC.Show.Show (t a) => GHC.Show.Show (Test.QuickCheck.Combinators.AtMost n t a) instance GHC.Base.Monoid (t a) => GHC.Base.Monoid (Test.QuickCheck.Combinators.AtLeast n t a) instance Data.Traversable.Traversable t => Data.Traversable.Traversable (Test.QuickCheck.Combinators.AtLeast n t) instance Data.Foldable.Foldable t => Data.Foldable.Foldable (Test.QuickCheck.Combinators.AtLeast n t) instance GHC.Base.Monad t => GHC.Base.Monad (Test.QuickCheck.Combinators.AtLeast n t) instance GHC.Base.Applicative t => GHC.Base.Applicative (Test.QuickCheck.Combinators.AtLeast n t) instance GHC.Base.Functor t => GHC.Base.Functor (Test.QuickCheck.Combinators.AtLeast n t) instance GHC.Generics.Generic (Test.QuickCheck.Combinators.AtLeast n t a) instance (Data.Data.Data (t a), Data.Typeable.Internal.Typeable a, Data.Typeable.Internal.Typeable t, GHC.TypeNats.KnownNat n) => Data.Data.Data (Test.QuickCheck.Combinators.AtLeast n t a) instance GHC.Enum.Enum (t a) => GHC.Enum.Enum (Test.QuickCheck.Combinators.AtLeast n t a) instance GHC.Classes.Ord (t a) => GHC.Classes.Ord (Test.QuickCheck.Combinators.AtLeast n t a) instance GHC.Classes.Eq (t a) => GHC.Classes.Eq (Test.QuickCheck.Combinators.AtLeast n t a) instance GHC.Read.Read (t a) => GHC.Read.Read (Test.QuickCheck.Combinators.AtLeast n t a) instance GHC.Show.Show (t a) => GHC.Show.Show (Test.QuickCheck.Combinators.AtLeast n t a) instance (Data.Unfoldable.Restricted.UnfoldableR p t, GHC.Base.Monoid (t a), Test.QuickCheck.Arbitrary.Arbitrary a, GHC.TypeNats.KnownNat n, GHC.TypeNats.KnownNat m, p a) => Test.QuickCheck.Arbitrary.Arbitrary (Test.QuickCheck.Combinators.Between n m t a) instance (Test.QuickCheck.Arbitrary.Arbitrary a, GHC.Classes.Ord a, GHC.TypeNats.KnownNat n, Data.Unfoldable.Restricted.UnfoldableR p [], p a, GHC.TypeNats.KnownNat m) => Test.QuickCheck.Arbitrary.Arbitrary (Test.QuickCheck.Combinators.Between n m Test.QuickCheck.Modifiers.OrderedList a) instance (Data.Unfoldable.Restricted.UnfoldableR p t, GHC.Base.Monoid (t a), Test.QuickCheck.Arbitrary.Arbitrary a, GHC.TypeNats.KnownNat m, p a) => Test.QuickCheck.Arbitrary.Arbitrary (Test.QuickCheck.Combinators.AtMost m t a) instance (Test.QuickCheck.Arbitrary.Arbitrary a, GHC.Classes.Ord a, Data.Unfoldable.Restricted.UnfoldableR p [], p a, GHC.TypeNats.KnownNat n) => Test.QuickCheck.Arbitrary.Arbitrary (Test.QuickCheck.Combinators.AtMost n Test.QuickCheck.Modifiers.OrderedList a) instance (Data.Unfoldable.Restricted.UnfoldableR p t, GHC.Base.Monoid (t a), Test.QuickCheck.Arbitrary.Arbitrary a, GHC.TypeNats.KnownNat n, p a) => Test.QuickCheck.Arbitrary.Arbitrary (Test.QuickCheck.Combinators.AtLeast n t a) instance (Test.QuickCheck.Arbitrary.Arbitrary a, GHC.Classes.Ord a, Data.Unfoldable.Restricted.UnfoldableR p [], p a, GHC.TypeNats.KnownNat n) => Test.QuickCheck.Arbitrary.Arbitrary (Test.QuickCheck.Combinators.AtLeast n Test.QuickCheck.Modifiers.OrderedList a)