-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | GenValidity support for containers
--   
--   GenValidity support for containers
@package genvalidity-containers
@version 1.0.0.2

module Data.GenValidity.IntMap
genIntMapOf :: Gen (Int, v) -> Gen (IntMap v)
shrinkIntMapOf :: ((Int, v) -> [(Int, v)]) -> IntMap v -> [IntMap v]
instance Data.GenValidity.GenValid v => Data.GenValidity.GenValid (Data.IntMap.Internal.IntMap v)

module Data.GenValidity.Map
genMapOf :: Ord k => Gen (k, v) -> Gen (Map k v)
shrinkMapOf :: Ord k => ((k, v) -> [(k, v)]) -> Map k v -> [Map k v]
instance (GHC.Internal.Show.Show k, GHC.Classes.Ord k, Data.GenValidity.GenValid k, Data.GenValidity.GenValid v) => Data.GenValidity.GenValid (Data.Map.Internal.Map k v)

module Data.GenValidity.Sequence
genSeqOf :: Gen v -> Gen (Seq v)
shrinkSeqOf :: (v -> [v]) -> Seq v -> [Seq v]
instance Data.GenValidity.GenValid v => Data.GenValidity.GenValid (Data.Sequence.Internal.Seq v)

module Data.GenValidity.Set
genSetOf :: Ord v => Gen v -> Gen (Set v)
shrinkSetOf :: Ord v => (v -> [v]) -> Set v -> [Set v]
genSeperate :: Ord a => Gen a -> Gen [a]
genSeperateFor :: Eq b => Gen b -> [a] -> Gen [(b, a)]
genSeperateForNE :: Eq b => Gen b -> NonEmpty a -> Gen (NonEmpty (b, a))
genValidSeperateFor :: (GenValid b, Eq b) => [a] -> Gen [(b, a)]
genValidSeperateForNE :: (GenValid b, Eq b) => NonEmpty a -> Gen (NonEmpty (b, a))
instance (GHC.Classes.Ord v, Data.GenValidity.GenValid v) => Data.GenValidity.GenValid (Data.Set.Internal.Set v)

module Data.GenValidity.Tree

-- | Generate a tree of values that are generated as specified.
--   
--   This takes the size parameter much better into account
genTreeOf :: Gen a -> Gen (Tree a)
shrinkTreeOf :: (a -> [a]) -> Tree a -> [Tree a]
instance Data.GenValidity.GenValid a => Data.GenValidity.GenValid (Data.Tree.Tree a)

module Data.GenValidity.Containers
