ClassLaws-0.3.0.1: Stating and checking laws for type class methods

Safe HaskellNone

Test.ClassLaws.TestingFinFuns

Description

Functions from a finite type can be shown, checked for equality, and generated. We provide variants both for total and for partial values.

Documentation

showPartialFun :: (Bounded a, Enum a, Show (Partial b), Show (Partial a)) => (a -> b) -> StringSource

showFun :: (Enum a, Bounded a, Show a, Show b) => (a -> b) -> StringSource

enumElems :: (Bounded a, Enum a) => [a]Source

arbitraryPartialFun :: forall e a. (Enum e, Bounded e, SemanticOrd a) => Gen a -> Gen (e -> a)Source

type FunTab e a = [a]Source

table2fun :: (Enum e, Bounded e, SemanticOrd a) => FunTab e a -> e -> aSource

lMeet :: SemanticOrd a => [a] -> aSource

semanticLE :: t -> a -> a1 -> BoolSource

type SemEq a = Tweak -> a -> a -> BoolSource

semEqFun :: (Bounded a, Enum a) => SemEq b -> SemEq (a -> b)Source

lessEqPartial :: Bool -> a -> a1 -> BoolSource

eqPartial :: Bool -> a -> a1 -> BoolSource

meetPartial :: a2 -> a -> a1 -> a2Source