quickcheck-lockstep-0.8.1: Library for lockstep-style testing with 'quickcheck-dynamic'
Safe HaskellNone
LanguageGHC2021

Test.QuickCheck.StateModel.Lockstep.Op.SumProd

Synopsis

Documentation

data Op a b where Source #

Operations with support for products (pairs) and sums (Either)

Constructors

OpId :: forall a. Op a a 
OpFst :: forall b b1. Op (b, b1) b 
OpSnd :: forall b1 b. Op (b1, b) b 
OpLeft :: forall b b1. Op (Either b b1) b 
OpRight :: forall b1 b. Op (Either b1 b) b 
OpComp :: forall b1 b a. Op b1 b -> Op a b1 -> Op a b 

Instances

Instances details
Operation Op Source # 
Instance details

Defined in Test.QuickCheck.StateModel.Lockstep.Op.SumProd

Methods

opIdentity :: Op a a Source #

InterpretOp Op Identity Source # 
Instance details

Defined in Test.QuickCheck.StateModel.Lockstep.Op.SumProd

Methods

intOp :: Op a b -> Identity a -> Maybe (Identity b) Source #

Show (Op a b) Source # 
Instance details

Defined in Test.QuickCheck.StateModel.Lockstep.Op.SumProd

Methods

showsPrec :: Int -> Op a b -> ShowS #

show :: Op a b -> String #

showList :: [Op a b] -> ShowS #

Eq (Op a b) Source # 
Instance details

Defined in Test.QuickCheck.StateModel.Lockstep.Op.SumProd

Methods

(==) :: Op a b -> Op a b -> Bool #

(/=) :: Op a b -> Op a b -> Bool #

intOpId :: Op a b -> a -> Maybe b Source #