axiomatic-classes-0.1.0.0: Specify axioms for type classes and quickCheck all available instances

Safe HaskellNone
LanguageHaskell2010

Test.QuickCheck.ZoomEq

Documentation

newtype ShallowZoom a Source #

Constructors

ShallowZoom 

Fields

Instances

class (Eq a, Show a) => ZoomEq a where Source #

Methods

(.==) :: a -> a -> Invariant infix 4 Source #

(.==) :: (GZoomEq (Rep a), Generic a, Eq a) => a -> a -> Invariant infix 4 Source #

Instances

ZoomEq Char Source # 

Methods

(.==) :: Char -> Char -> Invariant Source #

ZoomEq Double Source # 
ZoomEq Float Source # 

Methods

(.==) :: Float -> Float -> Invariant Source #

ZoomEq Int Source # 

Methods

(.==) :: Int -> Int -> Invariant Source #

ZoomEq Word16 Source # 
ZoomEq Word32 Source # 
ZoomEq Word64 Source # 
ZoomEq () Source # 

Methods

(.==) :: () -> () -> Invariant Source #

ZoomEq a => ZoomEq [a] Source # 

Methods

(.==) :: [a] -> [a] -> Invariant Source #

ZoomEq a => ZoomEq (Maybe a) Source # 

Methods

(.==) :: Maybe a -> Maybe a -> Invariant Source #

ZoomEq a => ZoomEq (Identity a) Source # 

Methods

(.==) :: Identity a -> Identity a -> Invariant Source #

ZoomEq a => ZoomEq (NonEmpty a) Source # 

Methods

(.==) :: NonEmpty a -> NonEmpty a -> Invariant Source #

ZoomEq a => ZoomEq (Checked a) Source # 

Methods

(.==) :: Checked a -> Checked a -> Invariant Source #

(Eq a, Show a) => ZoomEq (ShallowZoom a) Source # 
(ZoomEq a, ZoomEq b) => ZoomEq (Either a b) Source # 

Methods

(.==) :: Either a b -> Either a b -> Invariant Source #

(ZoomEq a, ZoomEq b) => ZoomEq (a, b) Source # 

Methods

(.==) :: (a, b) -> (a, b) -> Invariant Source #

ZoomEq (Proxy * a) Source # 

Methods

(.==) :: Proxy * a -> Proxy * a -> Invariant Source #

(Ord k, Show k, ZoomEq a) => ZoomEq (Map k a) Source # 

Methods

(.==) :: Map k a -> Map k a -> Invariant Source #

(ZoomEq a, ZoomEq b, ZoomEq c) => ZoomEq (a, b, c) Source # 

Methods

(.==) :: (a, b, c) -> (a, b, c) -> Invariant Source #

(ZoomEq a, ZoomEq b, ZoomEq c, ZoomEq d) => ZoomEq (a, b, c, d) Source # 

Methods

(.==) :: (a, b, c, d) -> (a, b, c, d) -> Invariant Source #

(ZoomEq a, ZoomEq b, ZoomEq c, ZoomEq d, ZoomEq e) => ZoomEq (a, b, c, d, e) Source # 

Methods

(.==) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Invariant Source #

(ZoomEq (f (g a)), Eq a, Eq1 f, Eq1 g, Show a, Functor f, Show1 f, Show1 g) => ZoomEq (Compose * * f g a) Source # 

Methods

(.==) :: Compose * * f g a -> Compose * * f g a -> Invariant Source #

genericZoomEq :: (GZoomEq (Rep a), Generic a, Eq a, Show a) => a -> a -> Invariant Source #

class GZoomEq a where Source #

Minimal complete definition

gZoomEq

Methods

gZoomEq :: a p -> a p -> Invariant Source #

Instances

GZoomEq U1 Source # 

Methods

gZoomEq :: U1 p -> U1 p -> Invariant Source #

(ZoomEq a, Show a) => GZoomEq (K1 k a) Source # 

Methods

gZoomEq :: K1 k a p -> K1 k a p -> Invariant Source #

(GZoomEq a, GZoomEq b) => GZoomEq ((:+:) a b) Source # 

Methods

gZoomEq :: (a :+: b) p -> (a :+: b) p -> Invariant Source #

(GZoomEq a, GZoomEq b) => GZoomEq ((:*:) a b) Source # 

Methods

gZoomEq :: (a :*: b) p -> (a :*: b) p -> Invariant Source #

GZoomEq a => GZoomEq (D1 z a) Source # 

Methods

gZoomEq :: D1 z a p -> D1 z a p -> Invariant Source #

(GZoomEq a, Constructor Meta c) => GZoomEq (C1 c a) Source # 

Methods

gZoomEq :: C1 c a p -> C1 c a p -> Invariant Source #

(GZoomEq a, Selector Meta s) => GZoomEq (S1 s a) Source # 

Methods

gZoomEq :: S1 s a p -> S1 s a p -> Invariant Source #