The Eq class defines equality (==) and inequality (/=).
 All the basic datatypes exported by the Prelude are instances of Eq,
 and Eq may be derived for any datatype whose constituents are also
 instances of Eq.
 Minimal complete definition: either == or /=.
  |   |  | Methods |   |   |    Instances |  | Eq Bool |  | Eq Char |  | Eq Double |  | Eq Float |  | Eq Int |  | Eq Int8 |  | Eq Int16 |  | Eq Int32 |  | Eq Int64 |  | Eq Integer |  | Eq Ordering |  | Eq Word |  | Eq Word8 |  | Eq Word16 |  | Eq Word32 |  | Eq Word64 |  | Eq () |  | Eq TyCon |  | Eq TypeRep |  | Eq ArithException |  | Eq IOException |  | Eq Lexeme |  | Eq IOMode |  | Eq SeekMode |  | Eq IODeviceType |  | Eq CUIntMax |  | Eq CIntMax |  | Eq CUIntPtr |  | Eq CIntPtr |  | Eq CTime |  | Eq CClock |  | Eq CSigAtomic |  | Eq CWchar |  | Eq CSize |  | Eq CPtrdiff |  | Eq CDouble |  | Eq CFloat |  | Eq CULLong |  | Eq CLLong |  | Eq CULong |  | Eq CLong |  | Eq CUInt |  | Eq CInt |  | Eq CUShort |  | Eq CShort |  | Eq CUChar |  | Eq CSChar |  | Eq CChar |  | Eq GeneralCategory |  | Eq Inserts |  | Eq HashData |  | Eq KeyPr |  | Eq Key |  | Eq Finalizers |  | Eq IntPtr |  | Eq WordPtr |  | Eq BufferState |  | Eq NewlineMode |  | Eq Newline |  | Eq BufferMode |  | Eq Handle |  | Eq IOErrorType |  | Eq ExitCode |  | Eq ArrayException |  | Eq AsyncException |  | Eq Errno |  | Eq Fd |  | Eq CRLim |  | Eq CTcflag |  | Eq CSpeed |  | Eq CCc |  | Eq CUid |  | Eq CNlink |  | Eq CGid |  | Eq CSsize |  | Eq CPid |  | Eq COff |  | Eq CMode |  | Eq CIno |  | Eq CDev |  | Eq ThreadStatus |  | Eq BlockReason |  | Eq ThreadId |  | Eq HandlePosn |  | Eq Fixity |  | Eq ConstrRep |  | Eq DataRep |  | Eq Constr |  | Eq Any |  | Eq All |  | Eq Unique |  | Eq Timeout |  | Eq Version |  | Eq Exception |  | Eq a => Eq [a] |  | Integral a => Eq (Ratio a) |  | Eq (StablePtr a) |  | Eq (Ptr a) |  | Eq (FunPtr a) |  | Eq a => Eq ([::] a) |  | Eq a => Eq (Maybe a) |  | Eq (MVar a) |  | Eq (IORef a) |  | Eq (ForeignPtr a) |  | Eq (TVar a) |  | Eq a => Eq (Down a) |  | Eq a => Eq (Last a) |  | Eq a => Eq (First a) |  | Eq a => Eq (Product a) |  | Eq a => Eq (Sum a) |  | Eq a => Eq (Dual a) |  | RealFloat a => Eq (Complex a) |  | Eq (Fixed a) |  | Eq (StableName a) |  | (Eq a, Eq b) => Eq (Either a b) |  | (Eq a, Eq b) => Eq (a, b) |  | (Ix i, Eq e) => Eq (Array i e) |  | Eq (IOArray i e) |  | Eq (STRef s a) |  | (Eq a, Eq b, Eq c) => Eq (a, b, c) |  | Eq (STArray s i e) |  | (Eq a, Eq b, Eq c, Eq d) => Eq (a, b, c, d) |  | (Eq a, Eq b, Eq c, Eq d, Eq e) => Eq (a, b, c, d, e) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f) => Eq (a, b, c, d, e, f) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g) => Eq (a, b, c, d, e, f, g) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h) => Eq (a, b, c, d, e, f, g, h) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i) => Eq (a, b, c, d, e, f, g, h, i) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j) => Eq (a, b, c, d, e, f, g, h, i, j) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k) => Eq (a, b, c, d, e, f, g, h, i, j, k) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l) => Eq (a, b, c, d, e, f, g, h, i, j, k, l) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l, Eq m) => Eq (a, b, c, d, e, f, g, h, i, j, k, l, m) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l, Eq m, Eq n) => Eq (a, b, c, d, e, f, g, h, i, j, k, l, m, n) |  | (Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l, Eq m, Eq n, Eq o) => Eq (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) |  
  |  
  |