Cabal-syntax-3.10.2.0: A library for working with .cabal files

Distribution.Compat.Prelude

Description

This module does two things:

• Acts as a compatibility layer, like base-compat.
• Provides commonly used imports.
Synopsis

# Prelude

(++) :: [a] -> [a] -> [a] infixr 5 #

Append two lists, i.e.,

[x1, ..., xm] ++ [y1, ..., yn] == [x1, ..., xm, y1, ..., yn]
[x1, ..., xm] ++ [y1, ...] == [x1, ..., xm, y1, ...]

If the first list is not finite, the result is the first list.

seq :: forall {r :: RuntimeRep} a (b :: TYPE r). a -> b -> b infixr 0 #

The value of seq a b is bottom if a is bottom, and otherwise equal to b. In other words, it evaluates the first argument a to weak head normal form (WHNF). seq is usually introduced to improve performance by avoiding unneeded laziness.

A note on evaluation order: the expression seq a b does not guarantee that a will be evaluated before b. The only guarantee given by seq is that the both a and b will be evaluated before seq returns a value. In particular, this means that b may be evaluated before a. If you need to guarantee a specific order of evaluation, you must use the function pseq from the "parallel" package.

filter :: (a -> Bool) -> [a] -> [a] #

$$\mathcal{O}(n)$$. filter, applied to a predicate and a list, returns the list of those elements that satisfy the predicate; i.e.,

filter p xs = [ x | x <- xs, p x]
>>> filter odd [1, 2, 3]
[1,3]


zip :: [a] -> [b] -> [(a, b)] #

$$\mathcal{O}(\min(m,n))$$. zip takes two lists and returns a list of corresponding pairs.

>>> zip [1, 2] ['a', 'b']
[(1,'a'),(2,'b')]


If one input list is shorter than the other, excess elements of the longer list are discarded, even if one of the lists is infinite:

>>> zip [1] ['a', 'b']
[(1,'a')]
>>> zip [1, 2] ['a']
[(1,'a')]
>>> zip [] [1..]
[]
>>> zip [1..] []
[]


zip is right-lazy:

>>> zip [] undefined
[]
>>> zip undefined []
*** Exception: Prelude.undefined
...


zip is capable of list fusion, but it is restricted to its first list argument and its resulting list.

print :: Show a => a -> IO () #

The print function outputs a value of any printable type to the standard output device. Printable types are those that are instances of class Show; print converts values to strings for output using the show operation and adds a newline.

For example, a program to print the first 20 integers and their powers of 2 could be written as:

main = print ([(n, 2^n) | n <- [0..19]])

fst :: (a, b) -> a #

Extract the first component of a pair.

snd :: (a, b) -> b #

Extract the second component of a pair.

otherwise is defined as the value True. It helps to make guards more readable. eg.

 f x | x < 0     = ...
| otherwise = ...

map :: (a -> b) -> [a] -> [b] #

$$\mathcal{O}(n)$$. map f xs is the list obtained by applying f to each element of xs, i.e.,

map f [x1, x2, ..., xn] == [f x1, f x2, ..., f xn]
map f [x1, x2, ...] == [f x1, f x2, ...]
>>> map (+1) [1, 2, 3]
[2,3,4]


($) :: forall (r :: RuntimeRep) a (b :: TYPE r). (a -> b) -> a -> b infixr 0 # Application operator. This operator is redundant, since ordinary application (f x) means the same as (f$ x). However, $ has low, right-associative binding precedence, so it sometimes allows parentheses to be omitted; for example: f$ g $h x = f (g (h x)) It is also useful in higher-order situations, such as map ($ 0) xs, or zipWith ($) fs xs. Note that ($) is levity-polymorphic in its result type, so that foo \$ True where foo :: Bool -> Int# is well-typed.

fromIntegral :: (Integral a, Num b) => a -> b #

general coercion from integral types

realToFrac :: (Real a, Fractional b) => a -> b #

general coercion to fractional types

class Bounded a where #

The Bounded class is used to name the upper and lower limits of a type. Ord is not a superclass of Bounded since types that are not totally ordered may also have upper and lower bounds.

The Bounded class may be derived for any enumeration type; minBound is the first constructor listed in the data declaration and maxBound is the last. Bounded may also be derived for single-constructor datatypes whose constituent types are in Bounded.

Methods

minBound :: a #

maxBound :: a #

#### Instances

Instances details
 Source # Instance detailsDefined in Distribution.CabalSpecVersion Methods Source # Instance detailsDefined in Distribution.Parsec.Warning Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseExceptionId Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseId Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseListVersion Methods Source # Instance detailsDefined in Distribution.Types.SourceRepo Methods Source # Instance detailsDefined in Language.Haskell.Extension Methods Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.Ptr Methods Instance detailsDefined in Foreign.Ptr Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-2.1 Instance detailsDefined in GHC.Int Methods Since: base-2.1 Instance detailsDefined in GHC.Int Methods Since: base-2.1 Instance detailsDefined in GHC.Int Methods Since: base-2.1 Instance detailsDefined in GHC.Int Methods Since: base-2.1 Instance detailsDefined in GHC.Unicode Methods Since: base-2.1 Instance detailsDefined in GHC.Word Methods Since: base-2.1 Instance detailsDefined in GHC.Word Methods Since: base-2.1 Instance detailsDefined in GHC.Word Methods Since: base-2.1 Instance detailsDefined in GHC.Word Methods Instance detailsDefined in GHC.LanguageExtensions.Type Methods Since: base-2.1 Instance detailsDefined in GHC.Enum Methods Bounded () Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: () #maxBound :: () # Since: base-2.1 Instance detailsDefined in GHC.Enum Methods Since: base-2.1 Instance detailsDefined in GHC.Enum Methods Since: base-2.1 Instance detailsDefined in GHC.Enum Methods Since: base-4.16.0.0 Instance detailsDefined in GHC.Enum Methods Since: base-4.10.0.0 Instance detailsDefined in GHC.Enum Methods Since: base-4.10.0.0 Instance detailsDefined in GHC.Enum Methods Since: base-2.1 Instance detailsDefined in GHC.Enum Methods Bounded a => Bounded (And a) Since: base-4.16 Instance detailsDefined in Data.Bits MethodsminBound :: And a #maxBound :: And a # Bounded a => Bounded (Iff a) Since: base-4.16 Instance detailsDefined in Data.Bits MethodsminBound :: Iff a #maxBound :: Iff a # Bounded a => Bounded (Ior a) Since: base-4.16 Instance detailsDefined in Data.Bits MethodsminBound :: Ior a #maxBound :: Ior a # Bounded a => Bounded (Xor a) Since: base-4.16 Instance detailsDefined in Data.Bits MethodsminBound :: Xor a #maxBound :: Xor a # Bounded a => Bounded (Identity a) Since: base-4.9.0.0 Instance detailsDefined in Data.Functor.Identity Methods Bounded a => Bounded (Down a) Swaps minBound and maxBound of the underlying type.Since: base-4.14.0.0 Instance detailsDefined in Data.Ord Methods Bounded a => Bounded (First a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods Bounded a => Bounded (Last a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods Bounded a => Bounded (Max a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup MethodsminBound :: Max a #maxBound :: Max a # Bounded a => Bounded (Min a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup MethodsminBound :: Min a #maxBound :: Min a # Bounded m => Bounded (WrappedMonoid m) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods Bounded a => Bounded (Dual a) Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods Bounded a => Bounded (Product a) Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods Bounded a => Bounded (Sum a) Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal MethodsminBound :: Sum a #maxBound :: Sum a # Bounded a => Bounded (a) Instance detailsDefined in GHC.Enum MethodsminBound :: (a) #maxBound :: (a) # Bounded (Proxy t) Since: base-4.7.0.0 Instance detailsDefined in Data.Proxy Methods (Bounded a, Bounded b) => Bounded (a, b) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b) #maxBound :: (a, b) # Bounded a => Bounded (Const a b) Since: base-4.9.0.0 Instance detailsDefined in Data.Functor.Const MethodsminBound :: Const a b #maxBound :: Const a b # (Applicative f, Bounded a) => Bounded (Ap f a) Since: base-4.12.0.0 Instance detailsDefined in Data.Monoid MethodsminBound :: Ap f a #maxBound :: Ap f a # Coercible a b => Bounded (Coercion a b) Since: base-4.7.0.0 Instance detailsDefined in Data.Type.Coercion MethodsminBound :: Coercion a b #maxBound :: Coercion a b # a ~ b => Bounded (a :~: b) Since: base-4.7.0.0 Instance detailsDefined in Data.Type.Equality MethodsminBound :: a :~: b #maxBound :: a :~: b # (Bounded a, Bounded b, Bounded c) => Bounded (a, b, c) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c) #maxBound :: (a, b, c) # a ~~ b => Bounded (a :~~: b) Since: base-4.10.0.0 Instance detailsDefined in Data.Type.Equality MethodsminBound :: a :~~: b #maxBound :: a :~~: b # (Bounded a, Bounded b, Bounded c, Bounded d) => Bounded (a, b, c, d) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d) #maxBound :: (a, b, c, d) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e) => Bounded (a, b, c, d, e) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e) #maxBound :: (a, b, c, d, e) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f) => Bounded (a, b, c, d, e, f) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f) #maxBound :: (a, b, c, d, e, f) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g) => Bounded (a, b, c, d, e, f, g) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g) #maxBound :: (a, b, c, d, e, f, g) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h) => Bounded (a, b, c, d, e, f, g, h) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h) #maxBound :: (a, b, c, d, e, f, g, h) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i) => Bounded (a, b, c, d, e, f, g, h, i) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i) #maxBound :: (a, b, c, d, e, f, g, h, i) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j) => Bounded (a, b, c, d, e, f, g, h, i, j) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i, j) #maxBound :: (a, b, c, d, e, f, g, h, i, j) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k) => Bounded (a, b, c, d, e, f, g, h, i, j, k) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i, j, k) #maxBound :: (a, b, c, d, e, f, g, h, i, j, k) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i, j, k, l) #maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m) #maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) #maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) # (Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n, Bounded o) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsminBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) #maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) #

class Enum a where #

Class Enum defines operations on sequentially ordered types.

The enumFrom... methods are used in Haskell's translation of arithmetic sequences.

Instances of Enum may be derived for any enumeration type (types whose constructors have no fields). The nullary constructors are assumed to be numbered left-to-right by fromEnum from 0 through n-1. See Chapter 10 of the Haskell Report for more details.

For any type that is an instance of class Bounded as well as Enum, the following should hold:

• The calls succ maxBound and pred minBound should result in a runtime error.
• fromEnum and toEnum should give a runtime error if the result value is not representable in the result type. For example, toEnum 7 :: Bool is an error.
• enumFrom and enumFromThen should be defined with an implicit bound, thus:
   enumFrom     x   = enumFromTo     x maxBound
enumFromThen x y = enumFromThenTo x y bound
where
| otherwise                = minBound

Minimal complete definition

Methods

succ :: a -> a #

the successor of a value. For numeric types, succ adds 1.

pred :: a -> a #

the predecessor of a value. For numeric types, pred subtracts 1.

toEnum :: Int -> a #

Convert from an Int.

fromEnum :: a -> Int #

Convert to an Int. It is implementation-dependent what fromEnum returns when applied to a value that is too large to fit in an Int.

enumFrom :: a -> [a] #

Used in Haskell's translation of [n..] with [n..] = enumFrom n, a possible implementation being enumFrom n = n : enumFrom (succ n). For example:

• enumFrom 4 :: [Integer] = [4,5,6,7,...]
• enumFrom 6 :: [Int] = [6,7,8,9,...,maxBound :: Int]

enumFromThen :: a -> a -> [a] #

Used in Haskell's translation of [n,n'..] with [n,n'..] = enumFromThen n n', a possible implementation being enumFromThen n n' = n : n' : worker (f x) (f x n'), worker s v = v : worker s (s v), x = fromEnum n' - fromEnum n and f n y | n > 0 = f (n - 1) (succ y) | n < 0 = f (n + 1) (pred y) | otherwise = y For example:

• enumFromThen 4 6 :: [Integer] = [4,6,8,10...]
• enumFromThen 6 2 :: [Int] = [6,2,-2,-6,...,minBound :: Int]

enumFromTo :: a -> a -> [a] #

Used in Haskell's translation of [n..m] with [n..m] = enumFromTo n m, a possible implementation being enumFromTo n m | n <= m = n : enumFromTo (succ n) m | otherwise = []. For example:

• enumFromTo 6 10 :: [Int] = [6,7,8,9,10]
• enumFromTo 42 1 :: [Integer] = []

enumFromThenTo :: a -> a -> a -> [a] #

Used in Haskell's translation of [n,n'..m] with [n,n'..m] = enumFromThenTo n n' m, a possible implementation being enumFromThenTo n n' m = worker (f x) (c x) n m, x = fromEnum n' - fromEnum n, c x = bool (>=) ((x 0) f n y | n > 0 = f (n - 1) (succ y) | n < 0 = f (n + 1) (pred y) | otherwise = y and worker s c v m | c v m = v : worker s c (s v) m | otherwise = [] For example:

• enumFromThenTo 4 2 -6 :: [Integer] = [4,2,0,-2,-4,-6]
• enumFromThenTo 6 8 2 :: [Int] = []

#### Instances

Instances details
 Source # Instance detailsDefined in Distribution.CabalSpecVersion Methods Source # Instance detailsDefined in Distribution.Parsec.Warning MethodsenumFrom :: PWarnType -> [PWarnType] # Source # Instance detailsDefined in Distribution.SPDX.LicenseExceptionId Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseId MethodsenumFrom :: LicenseId -> [LicenseId] # Source # Instance detailsDefined in Distribution.SPDX.LicenseListVersion Methods Source # Instance detailsDefined in Distribution.Types.SourceRepo Methods Source # Instance detailsDefined in Language.Haskell.Extension Methods Instance detailsDefined in Foreign.C.Types Methodssucc :: CBool -> CBool #pred :: CBool -> CBool #toEnum :: Int -> CBool #enumFrom :: CBool -> [CBool] #enumFromThen :: CBool -> CBool -> [CBool] #enumFromTo :: CBool -> CBool -> [CBool] #enumFromThenTo :: CBool -> CBool -> CBool -> [CBool] # Instance detailsDefined in Foreign.C.Types Methodssucc :: CChar -> CChar #pred :: CChar -> CChar #toEnum :: Int -> CChar #enumFrom :: CChar -> [CChar] #enumFromThen :: CChar -> CChar -> [CChar] #enumFromTo :: CChar -> CChar -> [CChar] #enumFromThenTo :: CChar -> CChar -> CChar -> [CChar] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CClock #enumFrom :: CClock -> [CClock] #enumFromThen :: CClock -> CClock -> [CClock] #enumFromTo :: CClock -> CClock -> [CClock] #enumFromThenTo :: CClock -> CClock -> CClock -> [CClock] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CDouble -> [CDouble] #enumFromThen :: CDouble -> CDouble -> [CDouble] #enumFromTo :: CDouble -> CDouble -> [CDouble] #enumFromThenTo :: CDouble -> CDouble -> CDouble -> [CDouble] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CFloat #enumFrom :: CFloat -> [CFloat] #enumFromThen :: CFloat -> CFloat -> [CFloat] #enumFromTo :: CFloat -> CFloat -> [CFloat] #enumFromThenTo :: CFloat -> CFloat -> CFloat -> [CFloat] # Instance detailsDefined in Foreign.C.Types Methodssucc :: CInt -> CInt #pred :: CInt -> CInt #toEnum :: Int -> CInt #fromEnum :: CInt -> Int #enumFrom :: CInt -> [CInt] #enumFromThen :: CInt -> CInt -> [CInt] #enumFromTo :: CInt -> CInt -> [CInt] #enumFromThenTo :: CInt -> CInt -> CInt -> [CInt] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CIntMax -> [CIntMax] #enumFromThen :: CIntMax -> CIntMax -> [CIntMax] #enumFromTo :: CIntMax -> CIntMax -> [CIntMax] #enumFromThenTo :: CIntMax -> CIntMax -> CIntMax -> [CIntMax] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CIntPtr -> [CIntPtr] #enumFromThen :: CIntPtr -> CIntPtr -> [CIntPtr] #enumFromTo :: CIntPtr -> CIntPtr -> [CIntPtr] #enumFromThenTo :: CIntPtr -> CIntPtr -> CIntPtr -> [CIntPtr] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CLLong #enumFrom :: CLLong -> [CLLong] #enumFromThen :: CLLong -> CLLong -> [CLLong] #enumFromTo :: CLLong -> CLLong -> [CLLong] #enumFromThenTo :: CLLong -> CLLong -> CLLong -> [CLLong] # Instance detailsDefined in Foreign.C.Types Methodssucc :: CLong -> CLong #pred :: CLong -> CLong #toEnum :: Int -> CLong #enumFrom :: CLong -> [CLong] #enumFromThen :: CLong -> CLong -> [CLong] #enumFromTo :: CLong -> CLong -> [CLong] #enumFromThenTo :: CLong -> CLong -> CLong -> [CLong] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CPtrdiff -> [CPtrdiff] #enumFromTo :: CPtrdiff -> CPtrdiff -> [CPtrdiff] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CSChar #enumFrom :: CSChar -> [CSChar] #enumFromThen :: CSChar -> CSChar -> [CSChar] #enumFromTo :: CSChar -> CSChar -> [CSChar] #enumFromThenTo :: CSChar -> CSChar -> CSChar -> [CSChar] # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CShort #enumFrom :: CShort -> [CShort] #enumFromThen :: CShort -> CShort -> [CShort] #enumFromTo :: CShort -> CShort -> [CShort] #enumFromThenTo :: CShort -> CShort -> CShort -> [CShort] # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methodssucc :: CSize -> CSize #pred :: CSize -> CSize #toEnum :: Int -> CSize #enumFrom :: CSize -> [CSize] #enumFromThen :: CSize -> CSize -> [CSize] #enumFromTo :: CSize -> CSize -> [CSize] #enumFromThenTo :: CSize -> CSize -> CSize -> [CSize] # Instance detailsDefined in Foreign.C.Types Methodssucc :: CTime -> CTime #pred :: CTime -> CTime #toEnum :: Int -> CTime #enumFrom :: CTime -> [CTime] #enumFromThen :: CTime -> CTime -> [CTime] #enumFromTo :: CTime -> CTime -> [CTime] #enumFromThenTo :: CTime -> CTime -> CTime -> [CTime] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CUChar #enumFrom :: CUChar -> [CUChar] #enumFromThen :: CUChar -> CUChar -> [CUChar] #enumFromTo :: CUChar -> CUChar -> [CUChar] #enumFromThenTo :: CUChar -> CUChar -> CUChar -> [CUChar] # Instance detailsDefined in Foreign.C.Types Methodssucc :: CUInt -> CUInt #pred :: CUInt -> CUInt #toEnum :: Int -> CUInt #enumFrom :: CUInt -> [CUInt] #enumFromThen :: CUInt -> CUInt -> [CUInt] #enumFromTo :: CUInt -> CUInt -> [CUInt] #enumFromThenTo :: CUInt -> CUInt -> CUInt -> [CUInt] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CUIntMax -> [CUIntMax] #enumFromTo :: CUIntMax -> CUIntMax -> [CUIntMax] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CUIntPtr -> [CUIntPtr] #enumFromTo :: CUIntPtr -> CUIntPtr -> [CUIntPtr] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CULLong -> [CULLong] #enumFromThen :: CULLong -> CULLong -> [CULLong] #enumFromTo :: CULLong -> CULLong -> [CULLong] #enumFromThenTo :: CULLong -> CULLong -> CULLong -> [CULLong] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CULong #enumFrom :: CULong -> [CULong] #enumFromThen :: CULong -> CULong -> [CULong] #enumFromTo :: CULong -> CULong -> [CULong] #enumFromThenTo :: CULong -> CULong -> CULong -> [CULong] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CUSeconds -> [CUSeconds] # Instance detailsDefined in Foreign.C.Types MethodsenumFrom :: CUShort -> [CUShort] #enumFromThen :: CUShort -> CUShort -> [CUShort] #enumFromTo :: CUShort -> CUShort -> [CUShort] #enumFromThenTo :: CUShort -> CUShort -> CUShort -> [CUShort] # Instance detailsDefined in Foreign.C.Types MethodstoEnum :: Int -> CWchar #enumFrom :: CWchar -> [CWchar] #enumFromThen :: CWchar -> CWchar -> [CWchar] #enumFromTo :: CWchar -> CWchar -> [CWchar] #enumFromThenTo :: CWchar -> CWchar -> CWchar -> [CWchar] # Instance detailsDefined in Foreign.Ptr MethodstoEnum :: Int -> IntPtr #enumFrom :: IntPtr -> [IntPtr] #enumFromThen :: IntPtr -> IntPtr -> [IntPtr] #enumFromTo :: IntPtr -> IntPtr -> [IntPtr] #enumFromThenTo :: IntPtr -> IntPtr -> IntPtr -> [IntPtr] # Instance detailsDefined in Foreign.Ptr MethodsenumFrom :: WordPtr -> [WordPtr] #enumFromThen :: WordPtr -> WordPtr -> [WordPtr] #enumFromTo :: WordPtr -> WordPtr -> [WordPtr] #enumFromThenTo :: WordPtr -> WordPtr -> WordPtr -> [WordPtr] # Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.IOMode MethodstoEnum :: Int -> IOMode #enumFrom :: IOMode -> [IOMode] #enumFromThen :: IOMode -> IOMode -> [IOMode] #enumFromTo :: IOMode -> IOMode -> [IOMode] #enumFromThenTo :: IOMode -> IOMode -> IOMode -> [IOMode] # Since: base-2.1 Instance detailsDefined in GHC.Int Methodssucc :: Int16 -> Int16 #pred :: Int16 -> Int16 #toEnum :: Int -> Int16 #enumFrom :: Int16 -> [Int16] #enumFromThen :: Int16 -> Int16 -> [Int16] #enumFromTo :: Int16 -> Int16 -> [Int16] #enumFromThenTo :: Int16 -> Int16 -> Int16 -> [Int16] # Since: base-2.1 Instance detailsDefined in GHC.Int Methodssucc :: Int32 -> Int32 #pred :: Int32 -> Int32 #toEnum :: Int -> Int32 #enumFrom :: Int32 -> [Int32] #enumFromThen :: Int32 -> Int32 -> [Int32] #enumFromTo :: Int32 -> Int32 -> [Int32] #enumFromThenTo :: Int32 -> Int32 -> Int32 -> [Int32] # Since: base-2.1 Instance detailsDefined in GHC.Int Methodssucc :: Int64 -> Int64 #pred :: Int64 -> Int64 #toEnum :: Int -> Int64 #enumFrom :: Int64 -> [Int64] #enumFromThen :: Int64 -> Int64 -> [Int64] #enumFromTo :: Int64 -> Int64 -> [Int64] #enumFromThenTo :: Int64 -> Int64 -> Int64 -> [Int64] # Since: base-2.1 Instance detailsDefined in GHC.Int Methodssucc :: Int8 -> Int8 #pred :: Int8 -> Int8 #toEnum :: Int -> Int8 #fromEnum :: Int8 -> Int #enumFrom :: Int8 -> [Int8] #enumFromThen :: Int8 -> Int8 -> [Int8] #enumFromTo :: Int8 -> Int8 -> [Int8] #enumFromThenTo :: Int8 -> Int8 -> Int8 -> [Int8] # Since: base-4.8.0.0 Instance detailsDefined in GHC.RTS.Flags Methods Since: base-4.8.0.0 Instance detailsDefined in GHC.RTS.Flags Methods Since: base-4.8.0.0 Instance detailsDefined in GHC.RTS.Flags MethodsenumFrom :: DoTrace -> [DoTrace] #enumFromThen :: DoTrace -> DoTrace -> [DoTrace] #enumFromTo :: DoTrace -> DoTrace -> [DoTrace] #enumFromThenTo :: DoTrace -> DoTrace -> DoTrace -> [DoTrace] # Since: base-4.8.0.0 Instance detailsDefined in GHC.RTS.Flags Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.RTS.Flags Methods Since: base-2.1 Instance detailsDefined in GHC.Unicode Methods Since: base-2.1 Instance detailsDefined in GHC.Word MethodstoEnum :: Int -> Word16 #enumFrom :: Word16 -> [Word16] #enumFromThen :: Word16 -> Word16 -> [Word16] #enumFromTo :: Word16 -> Word16 -> [Word16] #enumFromThenTo :: Word16 -> Word16 -> Word16 -> [Word16] # Since: base-2.1 Instance detailsDefined in GHC.Word MethodstoEnum :: Int -> Word32 #enumFrom :: Word32 -> [Word32] #enumFromThen :: Word32 -> Word32 -> [Word32] #enumFromTo :: Word32 -> Word32 -> [Word32] #enumFromThenTo :: Word32 -> Word32 -> Word32 -> [Word32] # Since: base-2.1 Instance detailsDefined in GHC.Word MethodstoEnum :: Int -> Word64 #enumFrom :: Word64 -> [Word64] #enumFromThen :: Word64 -> Word64 -> [Word64] #enumFromTo :: Word64 -> Word64 -> [Word64] #enumFromThenTo :: Word64 -> Word64 -> Word64 -> [Word64] # Since: base-2.1 Instance detailsDefined in GHC.Word Methodssucc :: Word8 -> Word8 #pred :: Word8 -> Word8 #toEnum :: Int -> Word8 #enumFrom :: Word8 -> [Word8] #enumFromThen :: Word8 -> Word8 -> [Word8] #enumFromTo :: Word8 -> Word8 -> [Word8] #enumFromThenTo :: Word8 -> Word8 -> Word8 -> [Word8] # Instance detailsDefined in GHC.LanguageExtensions.Type MethodsenumFrom :: Extension -> [Extension] # Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsenumFrom :: Ordering -> [Ordering] #enumFromTo :: Ordering -> Ordering -> [Ordering] # Instance detailsDefined in Text.Parsec.Error MethodsenumFrom :: Message -> [Message] #enumFromThen :: Message -> Message -> [Message] #enumFromTo :: Message -> Message -> [Message] #enumFromThenTo :: Message -> Message -> Message -> [Message] # Instance detailsDefined in Data.Time.Calendar.Days Methodssucc :: Day -> Day #pred :: Day -> Day #toEnum :: Int -> Day #fromEnum :: Day -> Int #enumFrom :: Day -> [Day] #enumFromThen :: Day -> Day -> [Day] #enumFromTo :: Day -> Day -> [Day] #enumFromThenTo :: Day -> Day -> Day -> [Day] # Instance detailsDefined in Data.Time.Clock.Internal.DiffTime MethodsenumFrom :: DiffTime -> [DiffTime] #enumFromTo :: DiffTime -> DiffTime -> [DiffTime] # Instance detailsDefined in Data.Time.Clock.Internal.NominalDiffTime Methods Since: base-2.1 Instance detailsDefined in GHC.Enum MethodsenumFrom :: Integer -> [Integer] #enumFromThen :: Integer -> Integer -> [Integer] #enumFromTo :: Integer -> Integer -> [Integer] #enumFromThenTo :: Integer -> Integer -> Integer -> [Integer] # Since: base-4.8.0.0 Instance detailsDefined in GHC.Enum MethodsenumFrom :: Natural -> [Natural] #enumFromThen :: Natural -> Natural -> [Natural] #enumFromTo :: Natural -> Natural -> [Natural] #enumFromThenTo :: Natural -> Natural -> Natural -> [Natural] # Enum () Since: base-2.1 Instance detailsDefined in GHC.Enum Methodssucc :: () -> () #pred :: () -> () #toEnum :: Int -> () #fromEnum :: () -> Int #enumFrom :: () -> [()] #enumFromThen :: () -> () -> [()] #enumFromTo :: () -> () -> [()] #enumFromThenTo :: () -> () -> () -> [()] # Since: base-2.1 Instance detailsDefined in GHC.Enum Methodssucc :: Bool -> Bool #pred :: Bool -> Bool #toEnum :: Int -> Bool #fromEnum :: Bool -> Int #enumFrom :: Bool -> [Bool] #enumFromThen :: Bool -> Bool -> [Bool] #enumFromTo :: Bool -> Bool -> [Bool] #enumFromThenTo :: Bool -> Bool -> Bool -> [Bool] # Since: base-2.1 Instance detailsDefined in GHC.Enum Methodssucc :: Char -> Char #pred :: Char -> Char #toEnum :: Int -> Char #fromEnum :: Char -> Int #enumFrom :: Char -> [Char] #enumFromThen :: Char -> Char -> [Char] #enumFromTo :: Char -> Char -> [Char] #enumFromThenTo :: Char -> Char -> Char -> [Char] # Since: base-2.1 Instance detailsDefined in GHC.Enum Methodssucc :: Int -> Int #pred :: Int -> Int #toEnum :: Int -> Int #fromEnum :: Int -> Int #enumFrom :: Int -> [Int] #enumFromThen :: Int -> Int -> [Int] #enumFromTo :: Int -> Int -> [Int] #enumFromThenTo :: Int -> Int -> Int -> [Int] # Since: base-4.16.0.0 Instance detailsDefined in GHC.Enum MethodstoEnum :: Int -> Levity #enumFrom :: Levity -> [Levity] #enumFromThen :: Levity -> Levity -> [Levity] #enumFromTo :: Levity -> Levity -> [Levity] #enumFromThenTo :: Levity -> Levity -> Levity -> [Levity] # Since: base-4.10.0.0 Instance detailsDefined in GHC.Enum MethodsenumFrom :: VecCount -> [VecCount] #enumFromTo :: VecCount -> VecCount -> [VecCount] # Since: base-4.10.0.0 Instance detailsDefined in GHC.Enum MethodsenumFrom :: VecElem -> [VecElem] #enumFromThen :: VecElem -> VecElem -> [VecElem] #enumFromTo :: VecElem -> VecElem -> [VecElem] #enumFromThenTo :: VecElem -> VecElem -> VecElem -> [VecElem] # Since: base-2.1 Instance detailsDefined in GHC.Enum Methodssucc :: Word -> Word #pred :: Word -> Word #toEnum :: Int -> Word #fromEnum :: Word -> Int #enumFrom :: Word -> [Word] #enumFromThen :: Word -> Word -> [Word] #enumFromTo :: Word -> Word -> [Word] #enumFromThenTo :: Word -> Word -> Word -> [Word] # Enum a => Enum (And a) Since: base-4.16 Instance detailsDefined in Data.Bits Methodssucc :: And a -> And a #pred :: And a -> And a #toEnum :: Int -> And a #fromEnum :: And a -> Int #enumFrom :: And a -> [And a] #enumFromThen :: And a -> And a -> [And a] #enumFromTo :: And a -> And a -> [And a] #enumFromThenTo :: And a -> And a -> And a -> [And a] # Enum a => Enum (Iff a) Since: base-4.16 Instance detailsDefined in Data.Bits Methodssucc :: Iff a -> Iff a #pred :: Iff a -> Iff a #toEnum :: Int -> Iff a #fromEnum :: Iff a -> Int #enumFrom :: Iff a -> [Iff a] #enumFromThen :: Iff a -> Iff a -> [Iff a] #enumFromTo :: Iff a -> Iff a -> [Iff a] #enumFromThenTo :: Iff a -> Iff a -> Iff a -> [Iff a] # Enum a => Enum (Ior a) Since: base-4.16 Instance detailsDefined in Data.Bits Methodssucc :: Ior a -> Ior a #pred :: Ior a -> Ior a #toEnum :: Int -> Ior a #fromEnum :: Ior a -> Int #enumFrom :: Ior a -> [Ior a] #enumFromThen :: Ior a -> Ior a -> [Ior a] #enumFromTo :: Ior a -> Ior a -> [Ior a] #enumFromThenTo :: Ior a -> Ior a -> Ior a -> [Ior a] # Enum a => Enum (Xor a) Since: base-4.16 Instance detailsDefined in Data.Bits Methodssucc :: Xor a -> Xor a #pred :: Xor a -> Xor a #toEnum :: Int -> Xor a #fromEnum :: Xor a -> Int #enumFrom :: Xor a -> [Xor a] #enumFromThen :: Xor a -> Xor a -> [Xor a] #enumFromTo :: Xor a -> Xor a -> [Xor a] #enumFromThenTo :: Xor a -> Xor a -> Xor a -> [Xor a] # Enum a => Enum (Identity a) Since: base-4.9.0.0 Instance detailsDefined in Data.Functor.Identity Methodssucc :: Identity a -> Identity a #pred :: Identity a -> Identity a #toEnum :: Int -> Identity a #fromEnum :: Identity a -> Int #enumFrom :: Identity a -> [Identity a] #enumFromThen :: Identity a -> Identity a -> [Identity a] #enumFromTo :: Identity a -> Identity a -> [Identity a] #enumFromThenTo :: Identity a -> Identity a -> Identity a -> [Identity a] # Enum a => Enum (First a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methodssucc :: First a -> First a #pred :: First a -> First a #toEnum :: Int -> First a #fromEnum :: First a -> Int #enumFrom :: First a -> [First a] #enumFromThen :: First a -> First a -> [First a] #enumFromTo :: First a -> First a -> [First a] #enumFromThenTo :: First a -> First a -> First a -> [First a] # Enum a => Enum (Last a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methodssucc :: Last a -> Last a #pred :: Last a -> Last a #toEnum :: Int -> Last a #fromEnum :: Last a -> Int #enumFrom :: Last a -> [Last a] #enumFromThen :: Last a -> Last a -> [Last a] #enumFromTo :: Last a -> Last a -> [Last a] #enumFromThenTo :: Last a -> Last a -> Last a -> [Last a] # Enum a => Enum (Max a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methodssucc :: Max a -> Max a #pred :: Max a -> Max a #toEnum :: Int -> Max a #fromEnum :: Max a -> Int #enumFrom :: Max a -> [Max a] #enumFromThen :: Max a -> Max a -> [Max a] #enumFromTo :: Max a -> Max a -> [Max a] #enumFromThenTo :: Max a -> Max a -> Max a -> [Max a] # Enum a => Enum (Min a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methodssucc :: Min a -> Min a #pred :: Min a -> Min a #toEnum :: Int -> Min a #fromEnum :: Min a -> Int #enumFrom :: Min a -> [Min a] #enumFromThen :: Min a -> Min a -> [Min a] #enumFromTo :: Min a -> Min a -> [Min a] #enumFromThenTo :: Min a -> Min a -> Min a -> [Min a] # Enum a => Enum (WrappedMonoid a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup MethodsenumFrom :: WrappedMonoid a -> [WrappedMonoid a] #enumFromThen :: WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] #enumFromTo :: WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] #enumFromThenTo :: WrappedMonoid a -> WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] # Integral a => Enum (Ratio a) Since: base-2.0.1 Instance detailsDefined in GHC.Real Methodssucc :: Ratio a -> Ratio a #pred :: Ratio a -> Ratio a #toEnum :: Int -> Ratio a #fromEnum :: Ratio a -> Int #enumFrom :: Ratio a -> [Ratio a] #enumFromThen :: Ratio a -> Ratio a -> [Ratio a] #enumFromTo :: Ratio a -> Ratio a -> [Ratio a] #enumFromThenTo :: Ratio a -> Ratio a -> Ratio a -> [Ratio a] # Enum a => Enum (a) Instance detailsDefined in GHC.Enum Methodssucc :: (a) -> (a) #pred :: (a) -> (a) #toEnum :: Int -> (a) #fromEnum :: (a) -> Int #enumFrom :: (a) -> [(a)] #enumFromThen :: (a) -> (a) -> [(a)] #enumFromTo :: (a) -> (a) -> [(a)] #enumFromThenTo :: (a) -> (a) -> (a) -> [(a)] # Enum (Fixed a) Recall that, for numeric types, succ and pred typically add and subtract 1, respectively. This is not true in the case of Fixed, whose successor and predecessor functions intuitively return the "next" and "previous" values in the enumeration. The results of these functions thus depend on the resolution of the Fixed value. For example, when enumerating values of resolution 10^-3 of type Milli = Fixed E3, succ (0.000 :: Milli) == 1.001 and likewise pred (0.000 :: Milli) == -0.001 In other words, succ and pred increment and decrement a fixed-precision value by the least amount such that the value's resolution is unchanged. For example, 10^-12 is the smallest (positive) amount that can be added to a value of type Pico = Fixed E12 without changing its resolution, and so succ (0.000000000000 :: Pico) == 0.000000000001 and similarly pred (0.000000000000 :: Pico) == -0.000000000001 This is worth bearing in mind when defining Fixed arithmetic sequences. In particular, you may be forgiven for thinking the sequence [1..10] :: [Pico] evaluates to [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] :: [Pico].However, this is not true. On the contrary, similarly to the above implementations of succ and pred, enumFromTo :: Pico -> Pico -> [Pico] has a "step size" of 10^-12. Hence, the list [1..10] :: [Pico] has the form [1.000000000000, 1.00000000001, 1.00000000002, ..., 10.000000000000] and contains 9 * 10^12 + 1 values.Since: base-2.1 Instance detailsDefined in Data.Fixed Methodssucc :: Fixed a -> Fixed a #pred :: Fixed a -> Fixed a #toEnum :: Int -> Fixed a #fromEnum :: Fixed a -> Int #enumFrom :: Fixed a -> [Fixed a] #enumFromThen :: Fixed a -> Fixed a -> [Fixed a] #enumFromTo :: Fixed a -> Fixed a -> [Fixed a] #enumFromThenTo :: Fixed a -> Fixed a -> Fixed a -> [Fixed a] # Enum (Proxy s) Since: base-4.7.0.0 Instance detailsDefined in Data.Proxy Methodssucc :: Proxy s -> Proxy s #pred :: Proxy s -> Proxy s #toEnum :: Int -> Proxy s #fromEnum :: Proxy s -> Int #enumFrom :: Proxy s -> [Proxy s] #enumFromThen :: Proxy s -> Proxy s -> [Proxy s] #enumFromTo :: Proxy s -> Proxy s -> [Proxy s] #enumFromThenTo :: Proxy s -> Proxy s -> Proxy s -> [Proxy s] # Enum a => Enum (Const a b) Since: base-4.9.0.0 Instance detailsDefined in Data.Functor.Const Methodssucc :: Const a b -> Const a b #pred :: Const a b -> Const a b #toEnum :: Int -> Const a b #fromEnum :: Const a b -> Int #enumFrom :: Const a b -> [Const a b] #enumFromThen :: Const a b -> Const a b -> [Const a b] #enumFromTo :: Const a b -> Const a b -> [Const a b] #enumFromThenTo :: Const a b -> Const a b -> Const a b -> [Const a b] # Enum (f a) => Enum (Ap f a) Since: base-4.12.0.0 Instance detailsDefined in Data.Monoid Methodssucc :: Ap f a -> Ap f a #pred :: Ap f a -> Ap f a #toEnum :: Int -> Ap f a #fromEnum :: Ap f a -> Int #enumFrom :: Ap f a -> [Ap f a] #enumFromThen :: Ap f a -> Ap f a -> [Ap f a] #enumFromTo :: Ap f a -> Ap f a -> [Ap f a] #enumFromThenTo :: Ap f a -> Ap f a -> Ap f a -> [Ap f a] # Enum (f a) => Enum (Alt f a) Since: base-4.8.0.0 Instance detailsDefined in Data.Semigroup.Internal Methodssucc :: Alt f a -> Alt f a #pred :: Alt f a -> Alt f a #toEnum :: Int -> Alt f a #fromEnum :: Alt f a -> Int #enumFrom :: Alt f a -> [Alt f a] #enumFromThen :: Alt f a -> Alt f a -> [Alt f a] #enumFromTo :: Alt f a -> Alt f a -> [Alt f a] #enumFromThenTo :: Alt f a -> Alt f a -> Alt f a -> [Alt f a] # Coercible a b => Enum (Coercion a b) Since: base-4.7.0.0 Instance detailsDefined in Data.Type.Coercion Methodssucc :: Coercion a b -> Coercion a b #pred :: Coercion a b -> Coercion a b #toEnum :: Int -> Coercion a b #fromEnum :: Coercion a b -> Int #enumFrom :: Coercion a b -> [Coercion a b] #enumFromThen :: Coercion a b -> Coercion a b -> [Coercion a b] #enumFromTo :: Coercion a b -> Coercion a b -> [Coercion a b] #enumFromThenTo :: Coercion a b -> Coercion a b -> Coercion a b -> [Coercion a b] # a ~ b => Enum (a :~: b) Since: base-4.7.0.0 Instance detailsDefined in Data.Type.Equality Methodssucc :: (a :~: b) -> a :~: b #pred :: (a :~: b) -> a :~: b #toEnum :: Int -> a :~: b #fromEnum :: (a :~: b) -> Int #enumFrom :: (a :~: b) -> [a :~: b] #enumFromThen :: (a :~: b) -> (a :~: b) -> [a :~: b] #enumFromTo :: (a :~: b) -> (a :~: b) -> [a :~: b] #enumFromThenTo :: (a :~: b) -> (a :~: b) -> (a :~: b) -> [a :~: b] # a ~~ b => Enum (a :~~: b) Since: base-4.10.0.0 Instance detailsDefined in Data.Type.Equality Methodssucc :: (a :~~: b) -> a :~~: b #pred :: (a :~~: b) -> a :~~: b #toEnum :: Int -> a :~~: b #fromEnum :: (a :~~: b) -> Int #enumFrom :: (a :~~: b) -> [a :~~: b] #enumFromThen :: (a :~~: b) -> (a :~~: b) -> [a :~~: b] #enumFromTo :: (a :~~: b) -> (a :~~: b) -> [a :~~: b] #enumFromThenTo :: (a :~~: b) -> (a :~~: b) -> (a :~~: b) -> [a :~~: b] #

class Eq a where #

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, instances are encouraged to follow these properties:

Reflexivity
x == x = True
Symmetry
x == y = y == x
Transitivity
if x == y && y == z = True, then x == z = True
Extensionality
if x == y = True and f is a function whose return type is an instance of Eq, then f x == f y = True
Negation
x /= y = not (x == y)

Minimal complete definition: either == or /=.

Minimal complete definition

Methods

(==) :: a -> a -> Bool infix 4 #

(/=) :: a -> a -> Bool infix 4 #

#### Instances

Instances details
 Source # Instance detailsDefined in Distribution.Backpack Methods Source # Instance detailsDefined in Distribution.Backpack Methods Source # Instance detailsDefined in Distribution.CabalSpecVersion Methods Source # Instance detailsDefined in Distribution.CabalSpecVersion Methods Source # Instance detailsDefined in Distribution.CabalSpecVersion Methods(==) :: HasElif -> HasElif -> Bool #(/=) :: HasElif -> HasElif -> Bool # Source # Instance detailsDefined in Distribution.Compiler Methods(==) :: AbiTag -> AbiTag -> Bool #(/=) :: AbiTag -> AbiTag -> Bool # Source # Instance detailsDefined in Distribution.Compiler Methods Source # Instance detailsDefined in Distribution.Compiler Methods Source # Instance detailsDefined in Distribution.FieldGrammar.Newtypes Methods Source # Instance detailsDefined in Distribution.FieldGrammar.Newtypes Methods Source # Instance detailsDefined in Distribution.Fields.LexerMonad Methods Source # Instance detailsDefined in Distribution.License Methods(==) :: License -> License -> Bool #(/=) :: License -> License -> Bool # Source # Instance detailsDefined in Distribution.ModuleName Methods Source # Instance detailsDefined in Distribution.Parsec.Position Methods Source # Instance detailsDefined in Distribution.Parsec.Warning Methods Source # Instance detailsDefined in Distribution.Parsec.Warning Methods Source # Instance detailsDefined in Distribution.SPDX.License Methods(==) :: License -> License -> Bool #(/=) :: License -> License -> Bool # Source # Instance detailsDefined in Distribution.SPDX.LicenseExceptionId Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseExpression Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseExpression Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseId Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseListVersion Methods Source # Instance detailsDefined in Distribution.SPDX.LicenseReference Methods Source # Instance detailsDefined in Distribution.System Methods(==) :: Arch -> Arch -> Bool #(/=) :: Arch -> Arch -> Bool # Source # Instance detailsDefined in Distribution.System Methods(==) :: OS -> OS -> Bool #(/=) :: OS -> OS -> Bool # Source # Instance detailsDefined in Distribution.System Methods Source # Instance detailsDefined in Distribution.Types.AbiDependency Methods Source # Instance detailsDefined in Distribution.Types.AbiHash Methods(==) :: AbiHash -> AbiHash -> Bool #(/=) :: AbiHash -> AbiHash -> Bool # Source # Instance detailsDefined in Distribution.Types.Benchmark Methods Source # Instance detailsDefined in Distribution.Types.BenchmarkInterface Methods Source # Instance detailsDefined in Distribution.Types.BenchmarkType Methods Source # Instance detailsDefined in Distribution.Types.BuildInfo Methods Source # Instance detailsDefined in Distribution.Types.BuildType Methods Source # Instance detailsDefined in Distribution.Types.Component Methods Source # Instance detailsDefined in Distribution.Types.ComponentId Methods Source # Instance detailsDefined in Distribution.Types.ComponentName Methods Source # Instance details Methods Source # Instance detailsDefined in Distribution.Types.ConfVar Methods(==) :: ConfVar -> ConfVar -> Bool #(/=) :: ConfVar -> ConfVar -> Bool # Source # Instance detailsDefined in Distribution.Types.Dependency Methods Source # Instance detailsDefined in Distribution.Types.DependencyMap Methods Source # Instance detailsDefined in Distribution.Types.ExeDependency Methods Source # Instance detailsDefined in Distribution.Types.Executable Methods Source # Instance detailsDefined in Distribution.Types.ExecutableScope Methods Source # Instance detailsDefined in Distribution.Types.ExposedModule Methods Source # Instance detailsDefined in Distribution.Types.Flag Methods Source # Instance detailsDefined in Distribution.Types.Flag Methods Source # Instance detailsDefined in Distribution.Types.Flag Methods Source # Instance detailsDefined in Distribution.Types.ForeignLib Methods Source # Instance detailsDefined in Distribution.Types.ForeignLib Methods Source # Instance detailsDefined in Distribution.Types.ForeignLibOption Methods Source # Instance detailsDefined in Distribution.Types.ForeignLibType Methods Source # Instance details Methods Source # Instance detailsDefined in Distribution.Types.IncludeRenaming Methods Source # Instance detailsDefined in Distribution.Types.InstalledPackageInfo Methods Source # Instance detailsDefined in Distribution.Types.LegacyExeDependency Methods Source # Instance detailsDefined in Distribution.Types.Library Methods(==) :: Library -> Library -> Bool #(/=) :: Library -> Library -> Bool # Source # Instance detailsDefined in Distribution.Types.LibraryName Methods Source # Instance detailsDefined in Distribution.Types.LibraryVisibility Methods Source # Instance detailsDefined in Distribution.Types.Mixin Methods(==) :: Mixin -> Mixin -> Bool #(/=) :: Mixin -> Mixin -> Bool # Source # Instance detailsDefined in Distribution.Types.Module Methods(==) :: Module -> Module -> Bool #(/=) :: Module -> Module -> Bool # Source # Instance detailsDefined in Distribution.Types.ModuleReexport Methods Source # Instance detailsDefined in Distribution.Types.ModuleRenaming Methods Source # Instance detailsDefined in Distribution.Types.MungedPackageId Methods Source # Instance detailsDefined in Distribution.Types.MungedPackageName Methods Source # Instance detailsDefined in Distribution.Types.PackageDescription Methods Source # Instance detailsDefined in Distribution.Types.PackageId Methods Source # Instance detailsDefined in Distribution.Types.PackageName Methods Source # Instance details Methods Source # Instance detailsDefined in Distribution.Types.PkgconfigDependency Methods Source # Instance detailsDefined in Distribution.Types.PkgconfigName Methods Source # Instance detailsDefined in Distribution.Types.PkgconfigVersion Methods Source # Instance detailsDefined in Distribution.Types.PkgconfigVersionRange Methods Source # Instance detailsDefined in Distribution.Types.SetupBuildInfo Methods Source # Instance detailsDefined in Distribution.Types.SourceRepo Methods Source # Instance detailsDefined in Distribution.Types.SourceRepo Methods Source # Instance detailsDefined in Distribution.Types.SourceRepo Methods Source # Instance detailsDefined in Distribution.Types.SourceRepo Methods Source # Instance detailsDefined in Distribution.Types.TestSuite Methods Source # Instance detailsDefined in Distribution.Types.TestSuiteInterface Methods Source # Instance detailsDefined in Distribution.Types.TestType Methods Source # Instance detailsDefined in Distribution.Types.UnitId Methods Source # Instance detailsDefined in Distribution.Types.UnitId Methods(==) :: UnitId -> UnitId -> Bool #(/=) :: UnitId -> UnitId -> Bool # Source # Instance detailsDefined in Distribution.Types.UnqualComponentName Methods Source # Instance detailsDefined in Distribution.Types.Version Methods(==) :: Version -> Version -> Bool #(/=) :: Version -> Version -> Bool # Source # Instance detailsDefined in Distribution.Types.VersionInterval Methods(==) :: Bound -> Bound -> Bool #(/=) :: Bound -> Bound -> Bool # Source # Instance detailsDefined in Distribution.Types.VersionInterval Methods Source # Instance detailsDefined in Distribution.Types.VersionInterval Methods Source # Instance detailsDefined in Distribution.Types.VersionInterval Methods Source # Instance detailsDefined in Distribution.Types.VersionInterval Methods Source # Instance details Methods(==) :: Bound -> Bound -> Bool #(/=) :: Bound -> Bound -> Bool # Source # Instance details Methods Source # Instance details Methods Source # Instance details Methods Source # Instance detailsDefined in Distribution.Types.VersionRange.Internal Methods Source # Instance detailsDefined in Distribution.Utils.ShortText Methods Source # Instance detailsDefined in Distribution.Utils.Structured Methods Source # Instance detailsDefined in Language.Haskell.Extension Methods Source # Instance detailsDefined in Language.Haskell.Extension Methods Source # Instance detailsDefined in Language.Haskell.Extension Methods Equality of constructorsSince: base-4.0.0.0 Instance detailsDefined in Data.Data Methods(==) :: Constr -> Constr -> Bool #(/=) :: Constr -> Constr -> Bool # Since: base-4.0.0.0 Instance detailsDefined in Data.Data Methods Since: base-4.0.0.0 Instance detailsDefined in Data.Data Methods(==) :: DataRep -> DataRep -> Bool #(/=) :: DataRep -> DataRep -> Bool # Since: base-4.0.0.0 Instance detailsDefined in Data.Data Methods(==) :: Fixity -> Fixity -> Bool #(/=) :: Fixity -> Fixity -> Bool # Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods(==) :: All -> All -> Bool #(/=) :: All -> All -> Bool # Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods(==) :: Any -> Any -> Bool #(/=) :: Any -> Any -> Bool # Instance detailsDefined in Data.Typeable.Internal Methods Instance detailsDefined in Data.Unique Methods(==) :: Unique -> Unique -> Bool #(/=) :: Unique -> Unique -> Bool # Since: base-2.1 Instance detailsDefined in Data.Version Methods(==) :: Version -> Version -> Bool #(/=) :: Version -> Version -> Bool # Since: base-4.8.0.0 Instance detailsDefined in Data.Void Methods(==) :: Void -> Void -> Bool #(/=) :: Void -> Void -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CBool -> CBool -> Bool #(/=) :: CBool -> CBool -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CChar -> CChar -> Bool #(/=) :: CChar -> CChar -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CClock -> CClock -> Bool #(/=) :: CClock -> CClock -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CDouble -> CDouble -> Bool #(/=) :: CDouble -> CDouble -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CFloat -> CFloat -> Bool #(/=) :: CFloat -> CFloat -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CInt -> CInt -> Bool #(/=) :: CInt -> CInt -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CIntMax -> CIntMax -> Bool #(/=) :: CIntMax -> CIntMax -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CIntPtr -> CIntPtr -> Bool #(/=) :: CIntPtr -> CIntPtr -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CLLong -> CLLong -> Bool #(/=) :: CLLong -> CLLong -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CLong -> CLong -> Bool #(/=) :: CLong -> CLong -> Bool # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods(==) :: CSChar -> CSChar -> Bool #(/=) :: CSChar -> CSChar -> Bool # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods(==) :: CShort -> CShort -> Bool #(/=) :: CShort -> CShort -> Bool # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods(==) :: CSize -> CSize -> Bool #(/=) :: CSize -> CSize -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CTime -> CTime -> Bool #(/=) :: CTime -> CTime -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CUChar -> CUChar -> Bool #(/=) :: CUChar -> CUChar -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CUInt -> CUInt -> Bool #(/=) :: CUInt -> CUInt -> Bool # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods(==) :: CULLong -> CULLong -> Bool #(/=) :: CULLong -> CULLong -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CULong -> CULong -> Bool #(/=) :: CULong -> CULong -> Bool # Instance detailsDefined in Foreign.C.Types Methods Instance detailsDefined in Foreign.C.Types Methods(==) :: CUShort -> CUShort -> Bool #(/=) :: CUShort -> CUShort -> Bool # Instance detailsDefined in Foreign.C.Types Methods(==) :: CWchar -> CWchar -> Bool #(/=) :: CWchar -> CWchar -> Bool # Instance detailsDefined in Foreign.Ptr Methods(==) :: IntPtr -> IntPtr -> Bool #(/=) :: IntPtr -> IntPtr -> Bool # Instance detailsDefined in Foreign.Ptr Methods(==) :: WordPtr -> WordPtr -> Bool #(/=) :: WordPtr -> WordPtr -> Bool # Since: base-4.3.0.0 Instance detailsDefined in GHC.Conc.Sync Methods Since: base-4.2.0.0 Instance detailsDefined in GHC.Conc.Sync Methods Since: base-4.3.0.0 Instance detailsDefined in GHC.Conc.Sync Methods Since: base-4.7.0.0 Instance detailsDefined in GHC.Exception Methods Since: base-3.0 Instance detailsDefined in GHC.Exception.Type Methods Since: base-4.3.0.0 Instance detailsDefined in GHC.Exts Methods Since: base-4.4.0.0 Instance detailsDefined in GHC.Fingerprint.Type Methods Since: base-4.6.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.6.0.0 Instance detailsDefined in GHC.Generics Methods(==) :: Fixity -> Fixity -> Bool #(/=) :: Fixity -> Fixity -> Bool # Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Generics Methods Since: base-4.3.0.0 Instance detailsDefined in GHC.IO Methods Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.Exception Methods Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.Exception Methods Instance detailsDefined in GHC.IO.Exception Methods Since: base-4.1.0.0 Instance detailsDefined in GHC.IO.Exception Methods Since: base-4.1.0.0 Instance detailsDefined in GHC.IO.Exception Methods Since: base-4.1.0.0 Instance detailsDefined in GHC.IO.Handle Methods Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.Handle.Types Methods Since: base-4.1.0.0 Instance detailsDefined in GHC.IO.Handle.Types Methods(==) :: Handle -> Handle -> Bool #(/=) :: Handle -> Handle -> Bool # Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.Handle.Types Methods(==) :: Newline -> Newline -> Bool #(/=) :: Newline -> Newline -> Bool # Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.Handle.Types Methods Since: base-4.2.0.0 Instance detailsDefined in GHC.IO.IOMode Methods(==) :: IOMode -> IOMode -> Bool #(/=) :: IOMode -> IOMode -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Int Methods(==) :: Int16 -> Int16 -> Bool #(/=) :: Int16 -> Int16 -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Int Methods(==) :: Int32 -> Int32 -> Bool #(/=) :: Int32 -> Int32 -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Int Methods(==) :: Int64 -> Int64 -> Bool #(/=) :: Int64 -> Int64 -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Int Methods(==) :: Int8 -> Int8 -> Bool #(/=) :: Int8 -> Int8 -> Bool # Instance detailsDefined in GHC.RTS.Flags Methods Since: base-4.9.0.0 Instance detailsDefined in GHC.Stack.Types Methods(==) :: SrcLoc -> SrcLoc -> Bool #(/=) :: SrcLoc -> SrcLoc -> Bool # Instance detailsDefined in GHC.TypeLits Methods Since: base-4.7.0.0 Instance detailsDefined in GHC.TypeLits Methods Since: base-2.1 Instance detailsDefined in GHC.Unicode Methods Since: base-2.1 Instance detailsDefined in GHC.Word Methods(==) :: Word16 -> Word16 -> Bool #(/=) :: Word16 -> Word16 -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Word Methods(==) :: Word32 -> Word32 -> Bool #(/=) :: Word32 -> Word32 -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Word Methods(==) :: Word64 -> Word64 -> Bool #(/=) :: Word64 -> Word64 -> Bool # Since: base-2.1 Instance detailsDefined in GHC.Word Methods(==) :: Word8 -> Word8 -> Bool #(/=) :: Word8 -> Word8 -> Bool # Since: base-2.1 Instance detailsDefined in Text.Read.Lex Methods(==) :: Lexeme -> Lexeme -> Bool #(/=) :: Lexeme -> Lexeme -> Bool # Since: base-4.6.0.0 Instance detailsDefined in Text.Read.Lex Methods(==) :: Number -> Number -> Bool #(/=) :: Number -> Number -> Bool # Instance detailsDefined in Data.ByteString.Internal Methods Instance detailsDefined in Data.ByteString.Lazy.Internal Methods Instance detailsDefined in Data.ByteString.Short.Internal Methods Instance detailsDefined in Data.IntSet.Internal Methods(==) :: IntSet -> IntSet -> Bool #(/=) :: IntSet -> IntSet -> Bool # Instance detailsDefined in GHC.ForeignSrcLang.Type Methods Instance detailsDefined in GHC.LanguageExtensions.Type Methods Instance detailsDefined in GHC.Classes Methods(==) :: Module -> Module -> Bool #(/=) :: Module -> Module -> Bool # Instance detailsDefined in GHC.Classes Methods Instance detailsDefined in GHC.Classes Methods(==) :: TrName -> TrName -> Bool #(/=) :: TrName -> TrName -> Bool # Instance detailsDefined in GHC.Classes Methods(==) :: TyCon -> TyCon -> Bool #(/=) :: TyCon -> TyCon -> Bool # Instance detailsDefined in Text.Parsec.Error Methods(==) :: Message -> Message -> Bool #(/=) :: Message -> Message -> Bool # Instance detailsDefined in Text.Parsec.Error Methods Instance detailsDefined in Text.Parsec.Pos Methods Instance detailsDefined in Text.PrettyPrint.Annotated.HughesPJ Methods(==) :: Mode -> Mode -> Bool #(/=) :: Mode -> Mode -> Bool # Instance detailsDefined in Text.PrettyPrint.Annotated.HughesPJ Methods(==) :: Style -> Style -> Bool #(/=) :: Style -> Style -> Bool # Instance detailsDefined in Text.PrettyPrint.Annotated.HughesPJ Methods Instance detailsDefined in Text.PrettyPrint.HughesPJ Methods(==) :: Doc -> Doc -> Bool #(/=) :: Doc -> Doc -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Bang -> Bang -> Bool #(/=) :: Bang -> Bang -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Body -> Body -> Bool #(/=) :: Body -> Body -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Bytes -> Bytes -> Bool #(/=) :: Bytes -> Bytes -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Clause -> Clause -> Bool #(/=) :: Clause -> Clause -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Con -> Con -> Bool #(/=) :: Con -> Con -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Dec -> Dec -> Bool #(/=) :: Dec -> Dec -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: DocLoc -> DocLoc -> Bool #(/=) :: DocLoc -> DocLoc -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Exp -> Exp -> Bool #(/=) :: Exp -> Exp -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Fixity -> Fixity -> Bool #(/=) :: Fixity -> Fixity -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Foreign -> Foreign -> Bool #(/=) :: Foreign -> Foreign -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: FunDep -> FunDep -> Bool #(/=) :: FunDep -> FunDep -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Guard -> Guard -> Bool #(/=) :: Guard -> Guard -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Info -> Info -> Bool #(/=) :: Info -> Info -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Inline -> Inline -> Bool #(/=) :: Inline -> Inline -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Lit -> Lit -> Bool #(/=) :: Lit -> Lit -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Loc -> Loc -> Bool #(/=) :: Loc -> Loc -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Match -> Match -> Bool #(/=) :: Match -> Match -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: ModName -> ModName -> Bool #(/=) :: ModName -> ModName -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Module -> Module -> Bool #(/=) :: Module -> Module -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Name -> Name -> Bool #(/=) :: Name -> Name -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: OccName -> OccName -> Bool #(/=) :: OccName -> OccName -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Overlap -> Overlap -> Bool #(/=) :: Overlap -> Overlap -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Pat -> Pat -> Bool #(/=) :: Pat -> Pat -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Phases -> Phases -> Bool #(/=) :: Phases -> Phases -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: PkgName -> PkgName -> Bool #(/=) :: PkgName -> PkgName -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Pragma -> Pragma -> Bool #(/=) :: Pragma -> Pragma -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Range -> Range -> Bool #(/=) :: Range -> Range -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Role -> Role -> Bool #(/=) :: Role -> Role -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Safety -> Safety -> Bool #(/=) :: Safety -> Safety -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Stmt -> Stmt -> Bool #(/=) :: Stmt -> Stmt -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: TyLit -> TyLit -> Bool #(/=) :: TyLit -> TyLit -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Language.Haskell.TH.Syntax Methods(==) :: Type -> Type -> Bool #(/=) :: Type -> Type -> Bool # Instance detailsDefined in Language.Haskell.TH.Syntax Methods Instance detailsDefined in Data.Time.Calendar.Days Methods(==) :: Day -> Day -> Bool #(/=) :: Day -> Day -> Bool # Instance detailsDefined in Data.Time.Clock.Internal.DiffTime Methods Instance detailsDefined in Data.Time.Clock.Internal.NominalDiffTime Methods Instance detailsDefined in Data.Time.Clock.Internal.UTCTime Methods(==) :: UTCTime -> UTCTime -> Bool #(/=) :: UTCTime -> UTCTime -> Bool # Instance detailsDefined in Data.Time.Clock.Internal.UniversalTime Methods Instance detailsDefined in Data.Time.LocalTime.Internal.LocalTime Methods Instance detailsDefined in Data.Time.LocalTime.Internal.TimeOfDay Methods Instance detailsDefined in Data.Time.LocalTime.Internal.TimeZone Methods Instance detailsDefined in GHC.Num.Integer Methods(==) :: Integer -> Integer -> Bool #(/=) :: Integer -> Integer -> Bool # Instance detailsDefined in GHC.Num.Natural Methods(==) :: Natural -> Natural -> Bool #(/=) :: Natural -> Natural -> Bool # Eq () Instance detailsDefined in GHC.Classes Methods(==) :: () -> () -> Bool #(/=) :: () -> () -> Bool # Instance detailsDefined in GHC.Classes Methods(==) :: Bool -> Bool -> Bool #(/=) :: Bool -> Bool -> Bool # Instance detailsDefined in GHC.Classes Methods(==) :: Char -> Char -> Bool #(/=) :: Char -> Char -> Bool # Note that due to the presence of NaN, Double's Eq instance does not satisfy reflexivity.>>> 0/0 == (0/0 :: Double) False Also note that Double's Eq instance does not satisfy substitutivity:>>> 0 == (-0 :: Double) True >>> recip 0 == recip (-0 :: Double) False  Instance detailsDefined in GHC.Classes Methods(==) :: Double -> Double -> Bool #(/=) :: Double -> Double -> Bool # Note that due to the presence of NaN, Float's Eq instance does not satisfy reflexivity.>>> 0/0 == (0/0 :: Float) False Also note that Float's Eq instance does not satisfy extensionality:>>> 0 == (-0 :: Float) True >>> recip 0 == recip (-0 :: Float) False  Instance detailsDefined in GHC.Classes Methods(==) :: Float -> Float -> Bool #(/=) :: Float -> Float -> Bool # Instance detailsDefined in GHC.Classes Methods(==) :: Int -> Int -> Bool #(/=) :: Int -> Int -> Bool # Instance detailsDefined in GHC.Classes Methods(==) :: Word -> Word -> Bool #(/=) :: Word -> Word -> Bool # (Eq (Key a), Eq a) => Eq (Graph a) Source # Instance detailsDefined in Distribution.Compat.Graph Methods(==) :: Graph a -> Graph a -> Bool #(/=) :: Graph a -> Graph a -> Bool # Eq a => Eq (NonEmptySet a) Source # Instance detailsDefined in Distribution.Compat.NonEmptySet Methods(==) :: NonEmptySet a -> NonEmptySet a -> Bool #(/=) :: NonEmptySet a -> NonEmptySet a -> Bool # Eq a => Eq (First' a) Source # Instance detailsDefined in Distribution.Compat.Semigroup Methods(==) :: First' a -> First' a -> Bool #(/=) :: First' a -> First' a -> Bool # Eq a => Eq (Last' a) Source # Instance detailsDefined in Distribution.Compat.Semigroup Methods(==) :: Last' a -> Last' a -> Bool #(/=) :: Last' a -> Last' a -> Bool # Eq a => Eq (Option' a) Source # Instance detailsDefined in Distribution.Compat.Semigroup Methods(==) :: Option' a -> Option' a -> Bool #(/=) :: Option' a -> Option' a -> Bool # Eq v => Eq (PerCompilerFlavor v) Source # Instance detailsDefined in Distribution.Compiler Methods Eq ann => Eq (NamelessField ann) Source # Instance detailsDefined in Distribution.FieldGrammar.Parsec Methods(==) :: NamelessField ann -> NamelessField ann -> Bool #(/=) :: NamelessField ann -> NamelessField ann -> Bool # Eq ann => Eq (Section ann) Source # Instance detailsDefined in Distribution.FieldGrammar.Parsec Methods(==) :: Section ann -> Section ann -> Bool #(/=) :: Section ann -> Section ann -> Bool # Eq ann => Eq (Field ann) Source # Instance detailsDefined in Distribution.Fields.Field Methods(==) :: Field ann -> Field ann -> Bool #(/=) :: Field ann -> Field ann -> Bool # Eq ann => Eq (FieldLine ann) Source # Instance detailsDefined in Distribution.Fields.Field Methods(==) :: FieldLine ann -> FieldLine ann -> Bool #(/=) :: FieldLine ann -> FieldLine ann -> Bool # Eq ann => Eq (Name ann) Source # Instance detailsDefined in Distribution.Fields.Field Methods(==) :: Name ann -> Name ann -> Bool #(/=) :: Name ann -> Name ann -> Bool # Eq ann => Eq (SectionArg ann) Source # Instance detailsDefined in Distribution.Fields.Field Methods(==) :: SectionArg ann -> SectionArg ann -> Bool #(/=) :: SectionArg ann -> SectionArg ann -> Bool # Eq c => Eq (Condition c) Source # Instance detailsDefined in Distribution.Types.Condition Methods(==) :: Condition c -> Condition c -> Bool #(/=) :: Condition c -> Condition c -> Bool # Eq a => Eq (VersionRangeF a) Source # Instance detailsDefined in Distribution.Types.VersionRange.Internal Methods(==) :: VersionRangeF a -> VersionRangeF a -> Bool #(/=) :: VersionRangeF a -> VersionRangeF a -> Bool # Eq a => Eq (ZipList a) Since: base-4.7.0.0 Instance detailsDefined in Control.Applicative Methods(==) :: ZipList a -> ZipList a -> Bool #(/=) :: ZipList a -> ZipList a -> Bool # Eq a => Eq (And a) Since: base-4.16 Instance detailsDefined in Data.Bits Methods(==) :: And a -> And a -> Bool #(/=) :: And a -> And a -> Bool # Eq a => Eq (Iff a) Since: base-4.16 Instance detailsDefined in Data.Bits Methods(==) :: Iff a -> Iff a -> Bool #(/=) :: Iff a -> Iff a -> Bool # Eq a => Eq (Ior a) Since: base-4.16 Instance detailsDefined in Data.Bits Methods(==) :: Ior a -> Ior a -> Bool #(/=) :: Ior a -> Ior a -> Bool # Eq a => Eq (Xor a) Since: base-4.16 Instance detailsDefined in Data.Bits Methods(==) :: Xor a -> Xor a -> Bool #(/=) :: Xor a -> Xor a -> Bool # Eq a => Eq (Complex a) Since: base-2.1 Instance detailsDefined in Data.Complex Methods(==) :: Complex a -> Complex a -> Bool #(/=) :: Complex a -> Complex a -> Bool # Eq a => Eq (Identity a) Since: base-4.8.0.0 Instance detailsDefined in Data.Functor.Identity Methods(==) :: Identity a -> Identity a -> Bool #(/=) :: Identity a -> Identity a -> Bool # Eq a => Eq (First a) Since: base-2.1 Instance detailsDefined in Data.Monoid Methods(==) :: First a -> First a -> Bool #(/=) :: First a -> First a -> Bool # Eq a => Eq (Last a) Since: base-2.1 Instance detailsDefined in Data.Monoid Methods(==) :: Last a -> Last a -> Bool #(/=) :: Last a -> Last a -> Bool # Eq a => Eq (Down a) Since: base-4.6.0.0 Instance detailsDefined in Data.Ord Methods(==) :: Down a -> Down a -> Bool #(/=) :: Down a -> Down a -> Bool # Eq a => Eq (First a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods(==) :: First a -> First a -> Bool #(/=) :: First a -> First a -> Bool # Eq a => Eq (Last a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods(==) :: Last a -> Last a -> Bool #(/=) :: Last a -> Last a -> Bool # Eq a => Eq (Max a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods(==) :: Max a -> Max a -> Bool #(/=) :: Max a -> Max a -> Bool # Eq a => Eq (Min a) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods(==) :: Min a -> Min a -> Bool #(/=) :: Min a -> Min a -> Bool # Eq m => Eq (WrappedMonoid m) Since: base-4.9.0.0 Instance detailsDefined in Data.Semigroup Methods(==) :: WrappedMonoid m -> WrappedMonoid m -> Bool #(/=) :: WrappedMonoid m -> WrappedMonoid m -> Bool # Eq a => Eq (Dual a) Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods(==) :: Dual a -> Dual a -> Bool #(/=) :: Dual a -> Dual a -> Bool # Eq a => Eq (Product a) Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods(==) :: Product a -> Product a -> Bool #(/=) :: Product a -> Product a -> Bool # Eq a => Eq (Sum a) Since: base-2.1 Instance detailsDefined in Data.Semigroup.Internal Methods(==) :: Sum a -> Sum a -> Bool #(/=) :: Sum a -> Sum a -> Bool # Eq (TVar a) Since: base-4.8.0.0 Instance detailsDefined in GHC.Conc.Sync Methods(==) :: TVar a -> TVar a -> Bool #(/=) :: TVar a -> TVar a -> Bool # Eq (ForeignPtr a) Since: base-2.1 Instance detailsDefined in GHC.ForeignPtr Methods(==) :: ForeignPtr a -> ForeignPtr a -> Bool #(/=) :: ForeignPtr a -> ForeignPtr a -> Bool # Eq p => Eq (Par1 p) Since: base-4.7.0.0 Instance detailsDefined in GHC.Generics Methods(==) :: Par1 p -> Par1 p -> Bool #(/=) :: Par1 p -> Par1 p -> Bool # Eq (IORef a) Pointer equality.Since: base-4.0.0.0 Instance detailsDefined in GHC.IORef Methods(==) :: IORef a -> IORef a -> Bool #(/=) :: IORef a -> IORef a -> Bool # Eq (MVar a) Since: base-4.1.0.0 Instance detailsDefined in GHC.MVar Methods(==) :: MVar a -> MVar a -> Bool #(/=) :: MVar a -> MVar a -> Bool # Eq (FunPtr a) Instance detailsDefined in GHC.Ptr Methods(==) :: FunPtr a -> FunPtr a -> Bool #(/=) :: FunPtr a -> FunPtr a -> Bool # Eq (Ptr a) Since: base-2.1 Instance detailsDefined in GHC.Ptr Methods(==) :: Ptr a -> Ptr a -> Bool #(/=) :: Ptr a -> Ptr a -> Bool # Eq a => Eq (Ratio a) Since: base-2.1 Instance detailsDefined in GHC.Real Methods(==) :: Ratio a -> Ratio a -> Bool #(/=) :: Ratio a -> Ratio a -> Bool # Eq (StablePtr a) Since: base-2.1 Instance detailsDefined in GHC.Stable Methods(==) :: StablePtr a -> StablePtr a -> Bool #(/=) :: StablePtr a -> StablePtr a -> Bool # Eq (StableName a) Since: base-2.1 Instance detailsDefined in GHC.StableName Methods(==) :: StableName a -> StableName a -> Bool #(/=) :: StableName a -> StableName a -> Bool # Eq vertex => Eq (SCC vertex) Since: containers-0.5.9 Instance detailsDefined in Data.Graph Methods(==) :: SCC vertex -> SCC vertex -> Bool #(/=) :: SCC vertex -> SCC vertex -> Bool # Eq a => Eq (IntMap a) Instance detailsDefined in Data.IntMap.Internal Methods(==) :: IntMap a -> IntMap a -> Bool #(/=) :: IntMap a -> IntMap a -> Bool # Eq a => Eq (Seq a) Instance detailsDefined in Data.Sequence.Internal Methods(==) :: Seq a -> Seq a -> Bool #(/=) :: Seq a -> Seq a -> Bool # Eq a => Eq (ViewL a) Instance detailsDefined in Data.Sequence.Internal Methods(==) :: ViewL a -> ViewL a -> Bool #(/=) :: ViewL a -