goblins-0.2.0.0: Genetic algorithm based randomised testing
Safe HaskellNone
LanguageHaskell2010

Test.Goblin.Instances

Orphan instances

SeedGoblin Bool Source # 
Instance details

Methods

seeder :: Bool -> TinkerM g () Source #

SeedGoblin Char Source # 
Instance details

Methods

seeder :: Char -> TinkerM g () Source #

SeedGoblin Double Source # 
Instance details

Methods

seeder :: Double -> TinkerM g () Source #

SeedGoblin Int Source # 
Instance details

Methods

seeder :: Int -> TinkerM g () Source #

SeedGoblin Integer Source # 
Instance details

Methods

seeder :: Integer -> TinkerM g () Source #

SeedGoblin Natural Source # 
Instance details

Methods

seeder :: Natural -> TinkerM g () Source #

SeedGoblin Word8 Source # 
Instance details

Methods

seeder :: Word8 -> TinkerM g () Source #

SeedGoblin Word64 Source # 
Instance details

Methods

seeder :: Word64 -> TinkerM g () Source #

SeedGoblin () Source # 
Instance details

Methods

seeder :: () -> TinkerM g () Source #

AddShrinks Bool Source # 
Instance details

AddShrinks Char Source # 
Instance details

AddShrinks Double Source # 
Instance details

AddShrinks Int Source # 
Instance details

Methods

addShrinks :: Int -> Gen Int Source #

AddShrinks Integer Source # 
Instance details

AddShrinks Natural Source # 
Instance details

AddShrinks Word8 Source # 
Instance details

AddShrinks Word64 Source # 
Instance details

AddShrinks () Source # 
Instance details

Methods

addShrinks :: () -> Gen () Source #

GeneOps Bool Source # 
Instance details

GeneOps a => Goblin a Double Source #

This instance generates Double values in range 0..1 at 0.01 increments. 0.01, 0.02 ... 0.99, 1.00

Instance details

GeneOps a => Goblin a Word64 Source # 
Instance details

GeneOps a => Goblin a Int Source # 
Instance details

GeneOps a => Goblin a Natural Source # 
Instance details

GeneOps a => Goblin a Integer Source # 
Instance details

GeneOps a => Goblin a Char Source # 
Instance details

GeneOps a => Goblin a Bool Source # 
Instance details

(Goblin genome arg, AddShrinks arg) => Goblin genome (Ratio arg) Source # 
Instance details

Methods

tinker :: Gen (Ratio arg) -> TinkerM genome (Gen (Ratio arg)) Source #

conjure :: TinkerM genome (Ratio arg) Source #

(Goblin g a, Ord a, AddShrinks a, Typeable a) => Goblin g (Set a) Source # 
Instance details

Methods

tinker :: Gen (Set a) -> TinkerM g (Gen (Set a)) Source #

conjure :: TinkerM g (Set a) Source #

(AddShrinks a, Eq a, Typeable a, GeneOps g, Goblin g a) => Goblin g [a] Source #

Our list goblin behaves slightly differently, since it pulls whole lists of things from the bag of tricks, and is also specialised to do some more messing about with lists.

Instance details

Methods

tinker :: Gen [a] -> TinkerM g (Gen [a]) Source #

conjure :: TinkerM g [a] Source #

(Goblin g a, AddShrinks a) => Goblin g (Maybe a) Source # 
Instance details

Methods

tinker :: Gen (Maybe a) -> TinkerM g (Gen (Maybe a)) Source #

conjure :: TinkerM g (Maybe a) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2) => Goblin genome (arg1, arg2) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2) -> TinkerM genome (Gen (arg1, arg2)) Source #

conjure :: TinkerM genome (arg1, arg2) Source #

(Goblin g k, Goblin g v, Ord k, Eq k, Eq v, AddShrinks (Map k v), AddShrinks k, AddShrinks v, Typeable k, Typeable v) => Goblin g (Map k v) Source # 
Instance details

Methods

tinker :: Gen (Map k v) -> TinkerM g (Gen (Map k v)) Source #

conjure :: TinkerM g (Map k v) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3) => Goblin genome (arg1, arg2, arg3) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3) -> TinkerM genome (Gen (arg1, arg2, arg3)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4) => Goblin genome (arg1, arg2, arg3, arg4) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5) => Goblin genome (arg1, arg2, arg3, arg4, arg5) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5, Goblin genome arg6, AddShrinks arg6) => Goblin genome (arg1, arg2, arg3, arg4, arg5, arg6) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5, arg6) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5, arg6)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5, arg6) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5, Goblin genome arg6, AddShrinks arg6, Goblin genome arg7, AddShrinks arg7) => Goblin genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5, Goblin genome arg6, AddShrinks arg6, Goblin genome arg7, AddShrinks arg7, Goblin genome arg8, AddShrinks arg8) => Goblin genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5, Goblin genome arg6, AddShrinks arg6, Goblin genome arg7, AddShrinks arg7, Goblin genome arg8, AddShrinks arg8, Goblin genome arg9, AddShrinks arg9) => Goblin genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5, Goblin genome arg6, AddShrinks arg6, Goblin genome arg7, AddShrinks arg7, Goblin genome arg8, AddShrinks arg8, Goblin genome arg9, AddShrinks arg9, Goblin genome arg10, AddShrinks arg10) => Goblin genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) Source #

(Goblin genome arg1, AddShrinks arg1, Goblin genome arg2, AddShrinks arg2, Goblin genome arg3, AddShrinks arg3, Goblin genome arg4, AddShrinks arg4, Goblin genome arg5, AddShrinks arg5, Goblin genome arg6, AddShrinks arg6, Goblin genome arg7, AddShrinks arg7, Goblin genome arg8, AddShrinks arg8, Goblin genome arg9, AddShrinks arg9, Goblin genome arg10, AddShrinks arg10, Goblin genome arg11, AddShrinks arg11) => Goblin genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) Source # 
Instance details

Methods

tinker :: Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) -> TinkerM genome (Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11)) Source #

conjure :: TinkerM genome (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) Source #

(SeedGoblin a, Typeable a) => SeedGoblin [a] Source # 
Instance details

Methods

seeder :: [a] -> TinkerM g () Source #

(SeedGoblin a, Typeable a) => SeedGoblin (Maybe a) Source # 
Instance details

Methods

seeder :: Maybe a -> TinkerM g () Source #

(SeedGoblin a, Typeable a) => SeedGoblin (Seq a) Source # 
Instance details

Methods

seeder :: Seq a -> TinkerM g () Source #

(SeedGoblin a, Typeable a) => SeedGoblin (Set a) Source # 
Instance details

Methods

seeder :: Set a -> TinkerM g () Source #

AddShrinks a => AddShrinks [a] Source # 
Instance details

Methods

addShrinks :: [a] -> Gen [a] Source #

AddShrinks a => AddShrinks (Maybe a) Source # 
Instance details

Methods

addShrinks :: Maybe a -> Gen (Maybe a) Source #

AddShrinks arg => AddShrinks (Ratio arg) Source # 
Instance details

Methods

addShrinks :: Ratio arg -> Gen (Ratio arg) Source #

(AddShrinks a, Ord a) => AddShrinks (Set a) Source # 
Instance details

Methods

addShrinks :: Set a -> Gen (Set a) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2) => SeedGoblin (arg1, arg2) Source # 
Instance details

Methods

seeder :: (arg1, arg2) -> TinkerM g () Source #

(SeedGoblin a, Typeable a, SeedGoblin b, Typeable b) => SeedGoblin (Map a b) Source # 
Instance details

Methods

seeder :: Map a b -> TinkerM g () Source #

(SeedGoblin a, Typeable a, SeedGoblin b, Typeable b) => SeedGoblin (Bimap a b) Source # 
Instance details

Methods

seeder :: Bimap a b -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2) => AddShrinks (arg1, arg2) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2) -> Gen (arg1, arg2) Source #

(AddShrinks k, Ord k, AddShrinks v) => AddShrinks (Map k v) Source # 
Instance details

Methods

addShrinks :: Map k v -> Gen (Map k v) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3) => SeedGoblin (arg1, arg2, arg3) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3) => AddShrinks (arg1, arg2, arg3) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3) -> Gen (arg1, arg2, arg3) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4) => SeedGoblin (arg1, arg2, arg3, arg4) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4) => AddShrinks (arg1, arg2, arg3, arg4) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4) -> Gen (arg1, arg2, arg3, arg4) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5) => SeedGoblin (arg1, arg2, arg3, arg4, arg5) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5) => AddShrinks (arg1, arg2, arg3, arg4, arg5) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5) -> Gen (arg1, arg2, arg3, arg4, arg5) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5, SeedGoblin arg6, Typeable arg6) => SeedGoblin (arg1, arg2, arg3, arg4, arg5, arg6) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5, arg6) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5, AddShrinks arg6) => AddShrinks (arg1, arg2, arg3, arg4, arg5, arg6) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5, arg6) -> Gen (arg1, arg2, arg3, arg4, arg5, arg6) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5, SeedGoblin arg6, Typeable arg6, SeedGoblin arg7, Typeable arg7) => SeedGoblin (arg1, arg2, arg3, arg4, arg5, arg6, arg7) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5, AddShrinks arg6, AddShrinks arg7) => AddShrinks (arg1, arg2, arg3, arg4, arg5, arg6, arg7) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7) -> Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5, SeedGoblin arg6, Typeable arg6, SeedGoblin arg7, Typeable arg7, SeedGoblin arg8, Typeable arg8) => SeedGoblin (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5, AddShrinks arg6, AddShrinks arg7, AddShrinks arg8) => AddShrinks (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) -> Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5, SeedGoblin arg6, Typeable arg6, SeedGoblin arg7, Typeable arg7, SeedGoblin arg8, Typeable arg8, SeedGoblin arg9, Typeable arg9) => SeedGoblin (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5, AddShrinks arg6, AddShrinks arg7, AddShrinks arg8, AddShrinks arg9) => AddShrinks (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) -> Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5, SeedGoblin arg6, Typeable arg6, SeedGoblin arg7, Typeable arg7, SeedGoblin arg8, Typeable arg8, SeedGoblin arg9, Typeable arg9, SeedGoblin arg10, Typeable arg10) => SeedGoblin (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5, AddShrinks arg6, AddShrinks arg7, AddShrinks arg8, AddShrinks arg9, AddShrinks arg10) => AddShrinks (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) -> Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10) Source #

(SeedGoblin arg1, Typeable arg1, SeedGoblin arg2, Typeable arg2, SeedGoblin arg3, Typeable arg3, SeedGoblin arg4, Typeable arg4, SeedGoblin arg5, Typeable arg5, SeedGoblin arg6, Typeable arg6, SeedGoblin arg7, Typeable arg7, SeedGoblin arg8, Typeable arg8, SeedGoblin arg9, Typeable arg9, SeedGoblin arg10, Typeable arg10, SeedGoblin arg11, Typeable arg11) => SeedGoblin (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) Source # 
Instance details

Methods

seeder :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) -> TinkerM g () Source #

(AddShrinks arg1, AddShrinks arg2, AddShrinks arg3, AddShrinks arg4, AddShrinks arg5, AddShrinks arg6, AddShrinks arg7, AddShrinks arg8, AddShrinks arg9, AddShrinks arg10, AddShrinks arg11) => AddShrinks (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) Source # 
Instance details

Methods

addShrinks :: (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) -> Gen (arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10, arg11) Source #