generic-deriving-1.10.6: Generic programming library for generalised deriving.

Safe HaskellTrustworthy
LanguageHaskell98

Generics.Deriving.Eq

Contents

Synopsis

Generic Eq class

class GEq a where Source #

Methods

geq :: a -> a -> Bool Source #

geq :: (Generic a, GEq' (Rep a)) => a -> a -> Bool Source #

Instances

GEq Bool Source # 

Methods

geq :: Bool -> Bool -> Bool Source #

GEq Char Source # 

Methods

geq :: Char -> Char -> Bool Source #

GEq Double Source # 

Methods

geq :: Double -> Double -> Bool Source #

GEq Float Source # 

Methods

geq :: Float -> Float -> Bool Source #

GEq Int Source # 

Methods

geq :: Int -> Int -> Bool Source #

GEq Int8 Source # 

Methods

geq :: Int8 -> Int8 -> Bool Source #

GEq Int16 Source # 

Methods

geq :: Int16 -> Int16 -> Bool Source #

GEq Int32 Source # 

Methods

geq :: Int32 -> Int32 -> Bool Source #

GEq Int64 Source # 

Methods

geq :: Int64 -> Int64 -> Bool Source #

GEq Integer Source # 

Methods

geq :: Integer -> Integer -> Bool Source #

GEq Ordering Source # 

Methods

geq :: Ordering -> Ordering -> Bool Source #

GEq Word Source # 

Methods

geq :: Word -> Word -> Bool Source #

GEq Word8 Source # 

Methods

geq :: Word8 -> Word8 -> Bool Source #

GEq Word16 Source # 

Methods

geq :: Word16 -> Word16 -> Bool Source #

GEq Word32 Source # 

Methods

geq :: Word32 -> Word32 -> Bool Source #

GEq Word64 Source # 

Methods

geq :: Word64 -> Word64 -> Bool Source #

GEq () Source # 

Methods

geq :: () -> () -> Bool Source #

GEq Handle Source # 

Methods

geq :: Handle -> Handle -> Bool Source #

GEq Natural Source # 

Methods

geq :: Natural -> Natural -> Bool Source #

GEq Void Source # 

Methods

geq :: Void -> Void -> Bool Source #

GEq Version Source # 

Methods

geq :: Version -> Version -> Bool Source #

GEq HandlePosn Source # 
GEq CDev Source # 

Methods

geq :: CDev -> CDev -> Bool Source #

GEq CIno Source # 

Methods

geq :: CIno -> CIno -> Bool Source #

GEq CMode Source # 

Methods

geq :: CMode -> CMode -> Bool Source #

GEq COff Source # 

Methods

geq :: COff -> COff -> Bool Source #

GEq CPid Source # 

Methods

geq :: CPid -> CPid -> Bool Source #

GEq CSsize Source # 

Methods

geq :: CSsize -> CSsize -> Bool Source #

GEq CGid Source # 

Methods

geq :: CGid -> CGid -> Bool Source #

GEq CNlink Source # 

Methods

geq :: CNlink -> CNlink -> Bool Source #

GEq CUid Source # 

Methods

geq :: CUid -> CUid -> Bool Source #

GEq CCc Source # 

Methods

geq :: CCc -> CCc -> Bool Source #

GEq CSpeed Source # 

Methods

geq :: CSpeed -> CSpeed -> Bool Source #

GEq CTcflag Source # 

Methods

geq :: CTcflag -> CTcflag -> Bool Source #

GEq CRLim Source # 

Methods

geq :: CRLim -> CRLim -> Bool Source #

GEq Fd Source # 

Methods

geq :: Fd -> Fd -> Bool Source #

GEq Errno Source # 

Methods

geq :: Errno -> Errno -> Bool Source #

GEq ExitCode Source # 

Methods

geq :: ExitCode -> ExitCode -> Bool Source #

GEq IOErrorType Source # 
GEq BufferMode Source # 
GEq WordPtr Source # 

Methods

geq :: WordPtr -> WordPtr -> Bool Source #

GEq IntPtr Source # 

Methods

geq :: IntPtr -> IntPtr -> Bool Source #

GEq CChar Source # 

Methods

geq :: CChar -> CChar -> Bool Source #

GEq CSChar Source # 

Methods

geq :: CSChar -> CSChar -> Bool Source #

GEq CUChar Source # 

Methods

geq :: CUChar -> CUChar -> Bool Source #

GEq CShort Source # 

Methods

geq :: CShort -> CShort -> Bool Source #

GEq CUShort Source # 

Methods

geq :: CUShort -> CUShort -> Bool Source #

GEq CInt Source # 

Methods

geq :: CInt -> CInt -> Bool Source #

GEq CUInt Source # 

Methods

geq :: CUInt -> CUInt -> Bool Source #

GEq CLong Source # 

Methods

geq :: CLong -> CLong -> Bool Source #

GEq CULong Source # 

Methods

geq :: CULong -> CULong -> Bool Source #

GEq CLLong Source # 

Methods

geq :: CLLong -> CLLong -> Bool Source #

GEq CULLong Source # 

Methods

geq :: CULLong -> CULLong -> Bool Source #

GEq CFloat Source # 

Methods

geq :: CFloat -> CFloat -> Bool Source #

GEq CDouble Source # 

Methods

geq :: CDouble -> CDouble -> Bool Source #

GEq CPtrdiff Source # 

Methods

geq :: CPtrdiff -> CPtrdiff -> Bool Source #

GEq CSize Source # 

Methods

geq :: CSize -> CSize -> Bool Source #

GEq CWchar Source # 

Methods

geq :: CWchar -> CWchar -> Bool Source #

GEq CSigAtomic Source # 
GEq CClock Source # 

Methods

geq :: CClock -> CClock -> Bool Source #

GEq CTime Source # 

Methods

geq :: CTime -> CTime -> Bool Source #

GEq CUSeconds Source # 
GEq CSUSeconds Source # 
GEq CIntPtr Source # 

Methods

geq :: CIntPtr -> CIntPtr -> Bool Source #

GEq CUIntPtr Source # 

Methods

geq :: CUIntPtr -> CUIntPtr -> Bool Source #

GEq CIntMax Source # 

Methods

geq :: CIntMax -> CIntMax -> Bool Source #

GEq CUIntMax Source # 

Methods

geq :: CUIntMax -> CUIntMax -> Bool Source #

GEq SeekMode Source # 

Methods

geq :: SeekMode -> SeekMode -> Bool Source #

GEq All Source # 

Methods

geq :: All -> All -> Bool Source #

GEq Any Source # 

Methods

geq :: Any -> Any -> Bool Source #

GEq Fixity Source # 

Methods

geq :: Fixity -> Fixity -> Bool Source #

GEq Associativity Source # 
GEq SourceUnpackedness Source # 
GEq SourceStrictness Source # 
GEq DecidedStrictness Source # 
GEq IOError Source # 

Methods

geq :: IOError -> IOError -> Bool Source #

GEq IOMode Source # 

Methods

geq :: IOMode -> IOMode -> Bool Source #

GEq GeneralCategory Source # 
GEq a => GEq [a] Source # 

Methods

geq :: [a] -> [a] -> Bool Source #

GEq a => GEq (Maybe a) Source # 

Methods

geq :: Maybe a -> Maybe a -> Bool Source #

GEq (StablePtr a) Source # 

Methods

geq :: StablePtr a -> StablePtr a -> Bool Source #

GEq (Ptr a) Source # 

Methods

geq :: Ptr a -> Ptr a -> Bool Source #

GEq (FunPtr a) Source # 

Methods

geq :: FunPtr a -> FunPtr a -> Bool Source #

GEq (U1 p) Source # 

Methods

geq :: U1 p -> U1 p -> Bool Source #

GEq p => GEq (Par1 p) Source # 

Methods

geq :: Par1 p -> Par1 p -> Bool Source #

GEq (UAddr p) Source # 

Methods

geq :: UAddr p -> UAddr p -> Bool Source #

GEq (UChar p) Source # 

Methods

geq :: UChar p -> UChar p -> Bool Source #

GEq (UDouble p) Source # 

Methods

geq :: UDouble p -> UDouble p -> Bool Source #

GEq (UFloat p) Source # 

Methods

geq :: UFloat p -> UFloat p -> Bool Source #

GEq (UInt p) Source # 

Methods

geq :: UInt p -> UInt p -> Bool Source #

GEq (UWord p) Source # 

Methods

geq :: UWord p -> UWord p -> Bool Source #

GEq (ForeignPtr a) Source # 

Methods

geq :: ForeignPtr a -> ForeignPtr a -> Bool Source #

GEq a => GEq (Identity a) Source # 

Methods

geq :: Identity a -> Identity a -> Bool Source #

GEq a => GEq (Min a) Source # 

Methods

geq :: Min a -> Min a -> Bool Source #

GEq a => GEq (Max a) Source # 

Methods

geq :: Max a -> Max a -> Bool Source #

GEq a => GEq (First a) Source # 

Methods

geq :: First a -> First a -> Bool Source #

GEq a => GEq (Last a) Source # 

Methods

geq :: Last a -> Last a -> Bool Source #

GEq m => GEq (WrappedMonoid m) Source # 
GEq a => GEq (Option a) Source # 

Methods

geq :: Option a -> Option a -> Bool Source #

GEq a => GEq (NonEmpty a) Source # 

Methods

geq :: NonEmpty a -> NonEmpty a -> Bool Source #

GEq a => GEq (Complex a) Source # 

Methods

geq :: Complex a -> Complex a -> Bool Source #

GEq a => GEq (ZipList a) Source # 

Methods

geq :: ZipList a -> ZipList a -> Bool Source #

GEq a => GEq (Dual a) Source # 

Methods

geq :: Dual a -> Dual a -> Bool Source #

GEq a => GEq (Sum a) Source # 

Methods

geq :: Sum a -> Sum a -> Bool Source #

GEq a => GEq (Product a) Source # 

Methods

geq :: Product a -> Product a -> Bool Source #

GEq a => GEq (First a) Source # 

Methods

geq :: First a -> First a -> Bool Source #

GEq a => GEq (Last a) Source # 

Methods

geq :: Last a -> Last a -> Bool Source #

(GEq a, GEq b) => GEq (Either a b) Source # 

Methods

geq :: Either a b -> Either a b -> Bool Source #

GEq (f p) => GEq (Rec1 f p) Source # 

Methods

geq :: Rec1 f p -> Rec1 f p -> Bool Source #

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

Methods

geq :: (a, b) -> (a, b) -> Bool Source #

GEq a => GEq (Arg a b) Source # 

Methods

geq :: Arg a b -> Arg a b -> Bool Source #

GEq (Proxy k s) Source # 

Methods

geq :: Proxy k s -> Proxy k s -> Bool Source #

GEq c => GEq (K1 i c p) Source # 

Methods

geq :: K1 i c p -> K1 i c p -> Bool Source #

(GEq (f p), GEq (g p)) => GEq ((:+:) f g p) Source # 

Methods

geq :: (f :+: g) p -> (f :+: g) p -> Bool Source #

(GEq (f p), GEq (g p)) => GEq ((:*:) f g p) Source # 

Methods

geq :: (f :*: g) p -> (f :*: g) p -> Bool Source #

GEq (f (g p)) => GEq ((:.:) f g p) Source # 

Methods

geq :: (f :.: g) p -> (f :.: g) p -> Bool Source #

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

Methods

geq :: (a, b, c) -> (a, b, c) -> Bool Source #

GEq a => GEq (Const k a b) Source # 

Methods

geq :: Const k a b -> Const k a b -> Bool Source #

GEq (f a) => GEq (Alt k f a) Source # 

Methods

geq :: Alt k f a -> Alt k f a -> Bool Source #

GEq (f p) => GEq (M1 i c f p) Source # 

Methods

geq :: M1 i c f p -> M1 i c f p -> Bool Source #

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

Methods

geq :: (a, b, c, d) -> (a, b, c, d) -> Bool Source #

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

Methods

geq :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source #

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

Methods

geq :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source #

(GEq a, GEq b, GEq c, GEq d, GEq e, GEq f, GEq g) => GEq (a, b, c, d, e, f, g) Source # 

Methods

geq :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source #

Default definition

geqdefault :: (Generic a, GEq' (Rep a)) => a -> a -> Bool Source #

Internal Eq class

class GEq' f where Source #

Minimal complete definition

geq'

Methods

geq' :: f a -> f a -> Bool Source #

Instances

GEq' * U1 Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * UAddr Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * UChar Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * UDouble Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * UFloat Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * UInt Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * UWord Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq c => GEq' * (K1 i c) Source # 

Methods

geq' :: f a -> f a -> Bool Source #

(GEq' * a, GEq' * b) => GEq' * ((:+:) a b) Source # 

Methods

geq' :: f a -> f a -> Bool Source #

(GEq' * a, GEq' * b) => GEq' * ((:*:) a b) Source # 

Methods

geq' :: f a -> f a -> Bool Source #

GEq' * a => GEq' * (M1 i c a) Source # 

Methods

geq' :: f a -> f a -> Bool Source #