| Copyright | (c) The University of Glasgow 2005 |
|---|---|
| License | BSD-style (see the file libraries/base/LICENSE) |
| Maintainer | libraries@haskell.org |
| Stability | stable |
| Portability | portable |
| Safe Haskell | Trustworthy |
| Language | Haskell2010 |
Data.Eq
Description
Equality
Documentation
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.
The Haskell Report defines no laws for Eq. However, == is customarily
expected to implement an equivalence relationship where two values comparing
equal are indistinguishable by "public" functions, with a "public" function
being one not allowing to see implementation details. For example, for a
type representing non-normalised natural numbers modulo 100, a "public"
function doesn't make the difference between 1 and 201. It is expected to
have the following properties:
Instances
| Eq Bool | |
| Eq Char | |
| Eq Double | Note that due to the presence of
Also note that
|
| Eq Float | Note that due to the presence of
Also note that
|
| Eq Int | |
| Eq Int8 Source # | Since: base-2.1 |
| Eq Int16 Source # | Since: base-2.1 |
| Eq Int32 Source # | Since: base-2.1 |
| Eq Int64 Source # | Since: base-2.1 |
| Eq Integer | |
| Eq Natural Source # | Since: base-4.8.0.0 |
| Eq Ordering | |
| Eq Word | |
| Eq Word8 Source # | Since: base-2.1 |
| Eq Word16 Source # | Since: base-2.1 |
| Eq Word32 Source # | Since: base-2.1 |
| Eq Word64 Source # | Since: base-2.1 |
| Eq SomeTypeRep Source # | |
Defined in Data.Typeable.Internal Methods (==) :: SomeTypeRep -> SomeTypeRep -> Bool Source # (/=) :: SomeTypeRep -> SomeTypeRep -> Bool Source # | |
| Eq () | |
| Eq TyCon | |
| Eq Module | |
| Eq TrName | |
| Eq BigNat | |
| Eq SrcLoc Source # | Since: base-4.9.0.0 |
| Eq GeneralCategory Source # | Since: base-2.1 |
Defined in GHC.Unicode Methods (==) :: GeneralCategory -> GeneralCategory -> Bool Source # (/=) :: GeneralCategory -> GeneralCategory -> Bool Source # | |
| Eq Number Source # | Since: base-4.6.0.0 |
| Eq Lexeme Source # | Since: base-2.1 |
| Eq Fingerprint Source # | Since: base-4.4.0.0 |
Defined in GHC.Fingerprint.Type Methods (==) :: Fingerprint -> Fingerprint -> Bool Source # (/=) :: Fingerprint -> Fingerprint -> Bool Source # | |
| Eq IOMode Source # | Since: base-4.2.0.0 |
| Eq IntPtr Source # | |
| Eq WordPtr Source # | |
| Eq CUIntMax Source # | |
| Eq CIntMax Source # | |
| Eq CUIntPtr Source # | |
| Eq CIntPtr Source # | |
| Eq CSUSeconds Source # | |
Defined in Foreign.C.Types Methods (==) :: CSUSeconds -> CSUSeconds -> Bool Source # (/=) :: CSUSeconds -> CSUSeconds -> Bool Source # | |
| Eq CUSeconds Source # | |
| Eq CTime Source # | |
| Eq CClock Source # | |
| Eq CSigAtomic Source # | |
Defined in Foreign.C.Types Methods (==) :: CSigAtomic -> CSigAtomic -> Bool Source # (/=) :: CSigAtomic -> CSigAtomic -> Bool Source # | |
| Eq CWchar Source # | |
| Eq CSize Source # | |
| Eq CPtrdiff Source # | |
| Eq CDouble Source # | |
| Eq CFloat Source # | |
| Eq CBool Source # | |
| Eq CULLong Source # | |
| Eq CLLong Source # | |
| Eq CULong Source # | |
| Eq CLong Source # | |
| Eq CUInt Source # | |
| Eq CInt Source # | |
| Eq CUShort Source # | |
| Eq CShort Source # | |
| Eq CUChar Source # | |
| Eq CSChar Source # | |
| Eq CChar Source # | |
| Eq SomeNat Source # | Since: base-4.7.0.0 |
| Eq SomeSymbol Source # | Since: base-4.7.0.0 |
Defined in GHC.TypeLits Methods (==) :: SomeSymbol -> SomeSymbol -> Bool Source # (/=) :: SomeSymbol -> SomeSymbol -> Bool Source # | |
| Eq DecidedStrictness Source # | Since: base-4.9.0.0 |
Defined in GHC.Generics Methods (==) :: DecidedStrictness -> DecidedStrictness -> Bool Source # (/=) :: DecidedStrictness -> DecidedStrictness -> Bool Source # | |
| Eq SourceStrictness Source # | Since: base-4.9.0.0 |
Defined in GHC.Generics Methods (==) :: SourceStrictness -> SourceStrictness -> Bool Source # (/=) :: SourceStrictness -> SourceStrictness -> Bool Source # | |
| Eq SourceUnpackedness Source # | Since: base-4.9.0.0 |
Defined in GHC.Generics Methods (==) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source # (/=) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source # | |
| Eq Associativity Source # | Since: base-4.6.0.0 |
Defined in GHC.Generics Methods (==) :: Associativity -> Associativity -> Bool Source # (/=) :: Associativity -> Associativity -> Bool Source # | |
| Eq Fixity Source # | Since: base-4.6.0.0 |
| Eq Any Source # | Since: base-2.1 |
| Eq All Source # | Since: base-2.1 |
| Eq ArithException Source # | Since: base-3.0 |
Defined in GHC.Exception.Type Methods (==) :: ArithException -> ArithException -> Bool Source # (/=) :: ArithException -> ArithException -> Bool Source # | |
| Eq ErrorCall Source # | Since: base-4.7.0.0 |
| Eq IOException Source # | Since: base-4.1.0.0 |
Defined in GHC.IO.Exception Methods (==) :: IOException -> IOException -> Bool Source # (/=) :: IOException -> IOException -> Bool Source # | |
| Eq MaskingState Source # | Since: base-4.3.0.0 |
Defined in GHC.IO Methods (==) :: MaskingState -> MaskingState -> Bool Source # (/=) :: MaskingState -> MaskingState -> Bool Source # | |
| Eq BufferState Source # | Since: base-4.2.0.0 |
Defined in GHC.IO.Buffer Methods (==) :: BufferState -> BufferState -> Bool Source # (/=) :: BufferState -> BufferState -> Bool Source # | |
| Eq CodingProgress Source # | Since: base-4.4.0.0 |
Defined in GHC.IO.Encoding.Types Methods (==) :: CodingProgress -> CodingProgress -> Bool Source # (/=) :: CodingProgress -> CodingProgress -> Bool Source # | |
| Eq SeekMode Source # | Since: base-4.2.0.0 |
| Eq IODeviceType Source # | Since: base-4.2.0.0 |
Defined in GHC.IO.Device Methods (==) :: IODeviceType -> IODeviceType -> Bool Source # (/=) :: IODeviceType -> IODeviceType -> Bool Source # | |
| Eq NewlineMode Source # | Since: base-4.2.0.0 |
Defined in GHC.IO.Handle.Types Methods (==) :: NewlineMode -> NewlineMode -> Bool Source # (/=) :: NewlineMode -> NewlineMode -> Bool Source # | |
| Eq Newline Source # | Since: base-4.2.0.0 |
| Eq BufferMode Source # | Since: base-4.2.0.0 |
Defined in GHC.IO.Handle.Types Methods (==) :: BufferMode -> BufferMode -> Bool Source # (/=) :: BufferMode -> BufferMode -> Bool Source # | |
| Eq Handle Source # | Since: base-4.1.0.0 |
| Eq IOErrorType Source # | Since: base-4.1.0.0 |
Defined in GHC.IO.Exception Methods (==) :: IOErrorType -> IOErrorType -> Bool Source # (/=) :: IOErrorType -> IOErrorType -> Bool Source # | |
| Eq ExitCode Source # | |
| Eq ArrayException Source # | Since: base-4.2.0.0 |
Defined in GHC.IO.Exception Methods (==) :: ArrayException -> ArrayException -> Bool Source # (/=) :: ArrayException -> ArrayException -> Bool Source # | |
| Eq AsyncException Source # | Since: base-4.2.0.0 |
Defined in GHC.IO.Exception Methods (==) :: AsyncException -> AsyncException -> Bool Source # (/=) :: AsyncException -> AsyncException -> Bool Source # | |
| Eq Errno Source # | Since: base-2.1 |
| Eq Fd Source # | |
| Eq CNfds Source # | |
| Eq CSocklen Source # | |
| Eq CTimer Source # | |
| Eq CKey Source # | |
| Eq CId Source # | |
| Eq CFsFilCnt Source # | |
| Eq CFsBlkCnt Source # | |
| Eq CClockId Source # | |
| Eq CBlkCnt Source # | |
| Eq CBlkSize Source # | |
| Eq CRLim Source # | |
| Eq CTcflag Source # | |
| Eq CSpeed Source # | |
| Eq CCc Source # | |
| Eq CUid Source # | |
| Eq CNlink Source # | |
| Eq CGid Source # | |
| Eq CSsize Source # | |
| Eq CPid Source # | |
| Eq COff Source # | |
| Eq CMode Source # | |
| Eq CIno Source # | |
| Eq CDev Source # | |
| Eq Lifetime Source # | Since: base-4.8.1.0 |
| Eq Event Source # | Since: base-4.4.0.0 |
| Eq ThreadStatus Source # | Since: base-4.3.0.0 |
Defined in GHC.Conc.Sync Methods (==) :: ThreadStatus -> ThreadStatus -> Bool Source # (/=) :: ThreadStatus -> ThreadStatus -> Bool Source # | |
| Eq BlockReason Source # | Since: base-4.3.0.0 |
Defined in GHC.Conc.Sync Methods (==) :: BlockReason -> BlockReason -> Bool Source # (/=) :: BlockReason -> BlockReason -> Bool Source # | |
| Eq ThreadId Source # | Since: base-4.2.0.0 |
| Eq TimeoutKey Source # | Since: base-4.7.0.0 |
Defined in GHC.Event.TimerManager Methods (==) :: TimeoutKey -> TimeoutKey -> Bool Source # (/=) :: TimeoutKey -> TimeoutKey -> Bool Source # | |
| Eq FdKey Source # | Since: base-4.4.0.0 |
| Eq HandlePosn Source # | Since: base-4.1.0.0 |
Defined in GHC.IO.Handle Methods (==) :: HandlePosn -> HandlePosn -> Bool Source # (/=) :: HandlePosn -> HandlePosn -> Bool Source # | |
| Eq Version Source # | Since: base-2.1 |
| Eq ByteOrder Source # | Since: base-4.11.0.0 |
| Eq Unique Source # | |
| Eq Timeout Source # | |
| Eq Fixity Source # | Since: base-4.0.0.0 |
| Eq ConstrRep Source # | Since: base-4.0.0.0 |
| Eq DataRep Source # | Since: base-4.0.0.0 |
| Eq Constr Source # | Equality of constructors Since: base-4.0.0.0 |
| Eq SpecConstrAnnotation Source # | Since: base-4.3.0.0 |
Defined in GHC.Exts Methods (==) :: SpecConstrAnnotation -> SpecConstrAnnotation -> Bool Source # (/=) :: SpecConstrAnnotation -> SpecConstrAnnotation -> Bool Source # | |
| Eq Void Source # | Since: base-4.8.0.0 |
| Eq a => Eq [a] | |
| Eq a => Eq (Maybe a) Source # | Since: base-2.1 |
| Eq a => Eq (Ratio a) Source # | Since: base-2.1 |
| Eq (StablePtr a) Source # | Since: base-2.1 |
| Eq (Ptr a) Source # | Since: base-2.1 |
| Eq (FunPtr a) Source # | |
| Eq p => Eq (Par1 p) Source # | Since: base-4.7.0.0 |
| Eq a => Eq (NonEmpty a) Source # | Since: base-4.9.0.0 |
| Eq (MVar a) Source # | Since: base-4.1.0.0 |
| Eq a => Eq (Down a) Source # | Since: base-4.6.0.0 |
| Eq a => Eq (Product a) Source # | Since: base-2.1 |
| Eq a => Eq (Sum a) Source # | Since: base-2.1 |
| Eq a => Eq (Dual a) Source # | Since: base-2.1 |
| Eq a => Eq (Last a) Source # | Since: base-2.1 |
| Eq a => Eq (First a) Source # | Since: base-2.1 |
| Eq (IORef a) Source # | Pointer equality. Since: base-4.0.0.0 |
| Eq (ForeignPtr a) Source # | Since: base-2.1 |
Defined in GHC.ForeignPtr Methods (==) :: ForeignPtr a -> ForeignPtr a -> Bool Source # (/=) :: ForeignPtr a -> ForeignPtr a -> Bool Source # | |
| Eq (TVar a) Source # | Since: base-4.8.0.0 |
| Eq a => Eq (Identity a) Source # | Since: base-4.8.0.0 |
| Eq a => Eq (ZipList a) Source # | Since: base-4.7.0.0 |
| Eq (StableName a) Source # | Since: base-2.1 |
Defined in GHC.StableName Methods (==) :: StableName a -> StableName a -> Bool Source # (/=) :: StableName a -> StableName a -> Bool Source # | |
| Eq (Chan a) Source # | Since: base-4.4.0.0 |
| Eq a => Eq (Option a) Source # | Since: base-4.9.0.0 |
| Eq m => Eq (WrappedMonoid m) Source # | Since: base-4.9.0.0 |
Defined in Data.Semigroup Methods (==) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source # (/=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source # | |
| Eq a => Eq (Last a) Source # | Since: base-4.9.0.0 |
| Eq a => Eq (First a) Source # | Since: base-4.9.0.0 |
| Eq a => Eq (Max a) Source # | Since: base-4.9.0.0 |
| Eq a => Eq (Min a) Source # | Since: base-4.9.0.0 |
| Eq a => Eq (Complex a) Source # | Since: base-2.1 |
| (Eq a, Eq b) => Eq (Either a b) Source # | Since: base-2.1 |
| Eq (V1 p) Source # | Since: base-4.9.0.0 |
| Eq (U1 p) Source # | Since: base-4.9.0.0 |
| Eq (TypeRep a) Source # | Since: base-2.1 |
| (Eq a, Eq b) => Eq (a, b) | |
| Eq (STRef s a) Source # | Pointer equality. Since: base-2.1 |
| (Ix i, Eq e) => Eq (Array i e) Source # | Since: base-2.1 |
| Eq (Proxy s) Source # | Since: base-4.7.0.0 |
| Eq (IOArray i e) Source # | Since: base-4.1.0.0 |
| Eq a => Eq (Arg a b) Source # | Since: base-4.9.0.0 |
| Eq (Fixed a) Source # | Since: base-2.1 |
| Eq (f p) => Eq (Rec1 f p) Source # | Since: base-4.7.0.0 |
| Eq (URec Word p) Source # | Since: base-4.9.0.0 |
| Eq (URec Int p) Source # | Since: base-4.9.0.0 |
| Eq (URec Float p) Source # | |
| Eq (URec Double p) Source # | Since: base-4.9.0.0 |
| Eq (URec Char p) Source # | Since: base-4.9.0.0 |
| Eq (URec (Ptr ()) p) Source # | Since: base-4.9.0.0 |
| (Eq a, Eq b, Eq c) => Eq (a, b, c) | |
| Eq (STArray s i e) Source # | Since: base-2.1 |
| Eq (a :~: b) Source # | Since: base-4.7.0.0 |
| Eq (Coercion a b) Source # | Since: base-4.7.0.0 |
| Eq (f a) => Eq (Alt f a) Source # | Since: base-4.8.0.0 |
| Eq (f a) => Eq (Ap f a) Source # | Since: base-4.12.0.0 |
| Eq a => Eq (Const a b) Source # | Since: base-4.9.0.0 |
| Eq c => Eq (K1 i c p) Source # | Since: base-4.7.0.0 |
| (Eq (f p), Eq (g p)) => Eq ((f :+: g) p) Source # | Since: base-4.7.0.0 |
| (Eq (f p), Eq (g p)) => Eq ((f :*: g) p) Source # | Since: base-4.7.0.0 |
| (Eq a, Eq b, Eq c, Eq d) => Eq (a, b, c, d) | |
| Eq (a :~~: b) Source # | Since: base-4.10.0.0 |
| (Eq1 f, Eq1 g, Eq a) => Eq (Sum f g a) Source # | Since: base-4.9.0.0 |
| (Eq1 f, Eq1 g, Eq a) => Eq (Product f g a) Source # | Since: base-4.9.0.0 |
| Eq (f p) => Eq (M1 i c f p) Source # | Since: base-4.7.0.0 |
| Eq (f (g p)) => Eq ((f :.: g) p) Source # | Since: base-4.7.0.0 |
| (Eq a, Eq b, Eq c, Eq d, Eq e) => Eq (a, b, c, d, e) | |
| (Eq1 f, Eq1 g, Eq a) => Eq (Compose f g a) Source # | Since: base-4.9.0.0 |
| (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) | |