W3cubDocs

/Haskell 8

Prelude

Copyright (c) The University of Glasgow 2001
License BSD-style (see the file libraries/base/LICENSE)
Maintainer libraries@haskell.org
Stability stable
Portability portable
Safe Haskell Trustworthy
Language Haskell2010

Description

The Prelude: a standard module. The Prelude is imported by default into all Haskell modules unless either there is an explicit import statement for it, or the NoImplicitPrelude extension is enabled.

Standard types, classes and related functions

Basic data types

data Bool Source

Constructors

False
True
Instances
Bounded Bool

Since: base-2.1

Instance details

Defined in GHC.Enum

Enum Bool

Since: base-2.1

Instance details

Defined in GHC.Enum

Eq Bool
Instance details

Defined in GHC.Classes

Methods

(==) :: Bool -> Bool -> Bool Source

(/=) :: Bool -> Bool -> Bool Source

Data Bool

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Bool -> c Bool Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Bool Source

toConstr :: Bool -> Constr Source

dataTypeOf :: Bool -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Bool) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Bool) Source

gmapT :: (forall b. Data b => b -> b) -> Bool -> Bool Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Bool -> r Source

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Bool -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Bool -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Bool -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Bool -> m Bool Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Bool -> m Bool Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Bool -> m Bool Source

Ord Bool
Instance details

Defined in GHC.Classes

Methods

compare :: Bool -> Bool -> Ordering Source

(<) :: Bool -> Bool -> Bool Source

(<=) :: Bool -> Bool -> Bool Source

(>) :: Bool -> Bool -> Bool Source

(>=) :: Bool -> Bool -> Bool Source

max :: Bool -> Bool -> Bool Source

min :: Bool -> Bool -> Bool Source

Read Bool

Since: base-2.1

Instance details

Defined in GHC.Read

Show Bool

Since: base-2.1

Instance details

Defined in GHC.Show

Ix Bool

Since: base-2.1

Instance details

Defined in GHC.Arr

Methods

range :: (Bool, Bool) -> [Bool] Source

index :: (Bool, Bool) -> Bool -> Int Source

unsafeIndex :: (Bool, Bool) -> Bool -> Int

inRange :: (Bool, Bool) -> Bool -> Bool Source

rangeSize :: (Bool, Bool) -> Int Source

unsafeRangeSize :: (Bool, Bool) -> Int

Generic Bool
Instance details

Defined in GHC.Generics

Associated Types

type Rep Bool :: Type -> Type Source

Methods

from :: Bool -> Rep Bool x Source

to :: Rep Bool x -> Bool Source

FiniteBits Bool

Since: base-4.7.0.0

Instance details

Defined in Data.Bits

Bits Bool

Interpret Bool as 1-bit bit-field

Since: base-4.7.0.0

Instance details

Defined in Data.Bits

Storable Bool

Since: base-2.1

Instance details

Defined in Foreign.Storable

type Rep Bool

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep Bool = D1 (MetaData "Bool" "GHC.Types" "ghc-prim" False) (C1 (MetaCons "False" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "True" PrefixI False) (U1 :: Type -> Type))

(&&) :: Bool -> Bool -> Bool infixr 3 Source

Boolean "and"

(||) :: Bool -> Bool -> Bool infixr 2 Source

Boolean "or"

not :: Bool -> Bool Source

Boolean "not"

otherwise :: Bool Source

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

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

data Maybe a Source

The Maybe type encapsulates an optional value. A value of type Maybe a either contains a value of type a (represented as Just a), or it is empty (represented as Nothing). Using Maybe is a good way to deal with errors or exceptional cases without resorting to drastic measures such as error.

The Maybe type is also a monad. It is a simple kind of error monad, where all errors are represented by Nothing. A richer error monad can be built using the Either type.

Constructors

Nothing
Just a
Instances
Monad Maybe

Since: base-2.1

Instance details

Defined in GHC.Base

Methods

(>>=) :: Maybe a -> (a -> Maybe b) -> Maybe b Source

(>>) :: Maybe a -> Maybe b -> Maybe b Source

return :: a -> Maybe a Source

fail :: String -> Maybe a Source

Functor Maybe

Since: base-2.1

Instance details

Defined in GHC.Base

Methods

fmap :: (a -> b) -> Maybe a -> Maybe b Source

(<$) :: a -> Maybe b -> Maybe a Source

MonadFix Maybe

Since: base-2.1

Instance details

Defined in Control.Monad.Fix

Methods

mfix :: (a -> Maybe a) -> Maybe a Source

MonadFail Maybe

Since: base-4.9.0.0

Instance details

Defined in Control.Monad.Fail

Methods

fail :: String -> Maybe a Source

Applicative Maybe

Since: base-2.1

Instance details

Defined in GHC.Base

Methods

pure :: a -> Maybe a Source

(<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b Source

liftA2 :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c Source

(*>) :: Maybe a -> Maybe b -> Maybe b Source

(<*) :: Maybe a -> Maybe b -> Maybe a Source

Foldable Maybe

Since: base-2.1

Instance details

Defined in Data.Foldable

Methods

fold :: Monoid m => Maybe m -> m Source

foldMap :: Monoid m => (a -> m) -> Maybe a -> m Source

foldr :: (a -> b -> b) -> b -> Maybe a -> b Source

foldr' :: (a -> b -> b) -> b -> Maybe a -> b Source

foldl :: (b -> a -> b) -> b -> Maybe a -> b Source

foldl' :: (b -> a -> b) -> b -> Maybe a -> b Source

foldr1 :: (a -> a -> a) -> Maybe a -> a Source

foldl1 :: (a -> a -> a) -> Maybe a -> a Source

toList :: Maybe a -> [a] Source

null :: Maybe a -> Bool Source

length :: Maybe a -> Int Source

elem :: Eq a => a -> Maybe a -> Bool Source

maximum :: Ord a => Maybe a -> a Source

minimum :: Ord a => Maybe a -> a Source

sum :: Num a => Maybe a -> a Source

product :: Num a => Maybe a -> a Source

Traversable Maybe

Since: base-2.1

Instance details

Defined in Data.Traversable

Methods

traverse :: Applicative f => (a -> f b) -> Maybe a -> f (Maybe b) Source

sequenceA :: Applicative f => Maybe (f a) -> f (Maybe a) Source

mapM :: Monad m => (a -> m b) -> Maybe a -> m (Maybe b) Source

sequence :: Monad m => Maybe (m a) -> m (Maybe a) Source

MonadPlus Maybe

Since: base-2.1

Instance details

Defined in GHC.Base

Methods

mzero :: Maybe a Source

mplus :: Maybe a -> Maybe a -> Maybe a Source

Alternative Maybe

Since: base-2.1

Instance details

Defined in GHC.Base

Methods

empty :: Maybe a Source

(<|>) :: Maybe a -> Maybe a -> Maybe a Source

some :: Maybe a -> Maybe [a] Source

many :: Maybe a -> Maybe [a] Source

MonadZip Maybe

Since: base-4.8.0.0

Instance details

Defined in Control.Monad.Zip

Methods

mzip :: Maybe a -> Maybe b -> Maybe (a, b) Source

mzipWith :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c Source

munzip :: Maybe (a, b) -> (Maybe a, Maybe b) Source

Show1 Maybe

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Maybe a -> ShowS Source

liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Maybe a] -> ShowS Source

Read1 Maybe

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Maybe a) Source

liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Maybe a] Source

liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Maybe a) Source

liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Maybe a] Source

Ord1 Maybe

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftCompare :: (a -> b -> Ordering) -> Maybe a -> Maybe b -> Ordering Source

Eq1 Maybe

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftEq :: (a -> b -> Bool) -> Maybe a -> Maybe b -> Bool Source

Eq a => Eq (Maybe a)

Since: base-2.1

Instance details

Defined in GHC.Maybe

Methods

(==) :: Maybe a -> Maybe a -> Bool Source

(/=) :: Maybe a -> Maybe a -> Bool Source

Data a => Data (Maybe a)

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Maybe a -> c (Maybe a) Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Maybe a) Source

toConstr :: Maybe a -> Constr Source

dataTypeOf :: Maybe a -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Maybe a)) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Maybe a)) Source

gmapT :: (forall b. Data b => b -> b) -> Maybe a -> Maybe a Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Maybe a -> r Source

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Maybe a -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Maybe a -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Maybe a -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Maybe a -> m (Maybe a) Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Maybe a -> m (Maybe a) Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Maybe a -> m (Maybe a) Source

Ord a => Ord (Maybe a)

Since: base-2.1

Instance details

Defined in GHC.Maybe

Methods

compare :: Maybe a -> Maybe a -> Ordering Source

(<) :: Maybe a -> Maybe a -> Bool Source

(<=) :: Maybe a -> Maybe a -> Bool Source

(>) :: Maybe a -> Maybe a -> Bool Source

(>=) :: Maybe a -> Maybe a -> Bool Source

max :: Maybe a -> Maybe a -> Maybe a Source

min :: Maybe a -> Maybe a -> Maybe a Source

Read a => Read (Maybe a)

Since: base-2.1

Instance details

Defined in GHC.Read

Show a => Show (Maybe a)

Since: base-2.1

Instance details

Defined in GHC.Show

Methods

showsPrec :: Int -> Maybe a -> ShowS Source

show :: Maybe a -> String Source

showList :: [Maybe a] -> ShowS Source

Generic (Maybe a)
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Maybe a) :: Type -> Type Source

Methods

from :: Maybe a -> Rep (Maybe a) x Source

to :: Rep (Maybe a) x -> Maybe a Source

Semigroup a => Semigroup (Maybe a)

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

(<>) :: Maybe a -> Maybe a -> Maybe a Source

sconcat :: NonEmpty (Maybe a) -> Maybe a Source

stimes :: Integral b => b -> Maybe a -> Maybe a Source

Semigroup a => Monoid (Maybe a)

Lift a semigroup into Maybe forming a Monoid according to http://en.wikipedia.org/wiki/Monoid: "Any semigroup S may be turned into a monoid simply by adjoining an element e not in S and defining e*e = e and e*s = s = s*e for all s ∈ S."

Since 4.11.0: constraint on inner a value generalised from Monoid to Semigroup.

Since: base-2.1

Instance details

Defined in GHC.Base

Methods

mempty :: Maybe a Source

mappend :: Maybe a -> Maybe a -> Maybe a Source

mconcat :: [Maybe a] -> Maybe a Source

Generic1 Maybe
Instance details

Defined in GHC.Generics

Associated Types

type Rep1 Maybe :: k -> Type Source

Methods

from1 :: Maybe a -> Rep1 Maybe a Source

to1 :: Rep1 Maybe a -> Maybe a Source

type Rep (Maybe a)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep (Maybe a) = D1 (MetaData "Maybe" "GHC.Maybe" "base" False) (C1 (MetaCons "Nothing" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "Just" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 a)))
type Rep1 Maybe

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

maybe :: b -> (a -> b) -> Maybe a -> b Source

The maybe function takes a default value, a function, and a Maybe value. If the Maybe value is Nothing, the function returns the default value. Otherwise, it applies the function to the value inside the Just and returns the result.

Examples
Expand

Basic usage:

>>> maybe False odd (Just 3)
True
>>> maybe False odd Nothing
False

Read an integer from a string using readMaybe. If we succeed, return twice the integer; that is, apply (*2) to it. If instead we fail to parse an integer, return 0 by default:

>>> import Text.Read ( readMaybe )
>>> maybe 0 (*2) (readMaybe "5")
10
>>> maybe 0 (*2) (readMaybe "")
0

Apply show to a Maybe Int. If we have Just n, we want to show the underlying Int n. But if we have Nothing, we return the empty string instead of (for example) "Nothing":

>>> maybe "" show (Just 5)
"5"
>>> maybe "" show Nothing
""

data Either a b Source

The Either type represents values with two possibilities: a value of type Either a b is either Left a or Right b.

The Either type is sometimes used to represent a value which is either correct or an error; by convention, the Left constructor is used to hold an error value and the Right constructor is used to hold a correct value (mnemonic: "right" also means "correct").

Examples
Expand

The type Either String Int is the type of values which can be either a String or an Int. The Left constructor can be used only on Strings, and the Right constructor can be used only on Ints:

>>> let s = Left "foo" :: Either String Int
>>> s
Left "foo"
>>> let n = Right 3 :: Either String Int
>>> n
Right 3
>>> :type s
s :: Either String Int
>>> :type n
n :: Either String Int

The fmap from our Functor instance will ignore Left values, but will apply the supplied function to values contained in a Right:

>>> let s = Left "foo" :: Either String Int
>>> let n = Right 3 :: Either String Int
>>> fmap (*2) s
Left "foo"
>>> fmap (*2) n
Right 6

The Monad instance for Either allows us to chain together multiple actions which may fail, and fail overall if any of the individual steps failed. First we'll write a function that can either parse an Int from a Char, or fail.

>>> import Data.Char ( digitToInt, isDigit )
>>> :{
    let parseEither :: Char -> Either String Int
        parseEither c
          | isDigit c = Right (digitToInt c)
          | otherwise = Left "parse error"
>>> :}

The following should work, since both '1' and '2' can be parsed as Ints.

>>> :{
    let parseMultiple :: Either String Int
        parseMultiple = do
          x <- parseEither '1'
          y <- parseEither '2'
          return (x + y)
>>> :}
>>> parseMultiple
Right 3

But the following should fail overall, since the first operation where we attempt to parse 'm' as an Int will fail:

>>> :{
    let parseMultiple :: Either String Int
        parseMultiple = do
          x <- parseEither 'm'
          y <- parseEither '2'
          return (x + y)
>>> :}
>>> parseMultiple
Left "parse error"

Constructors

Left a
Right b
Instances
Show2 Either

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> Either a b -> ShowS Source

liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [Either a b] -> ShowS Source

Read2 Either

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftReadsPrec2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> Int -> ReadS (Either a b) Source

liftReadList2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> ReadS [Either a b] Source

liftReadPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec (Either a b) Source

liftReadListPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec [Either a b] Source

Ord2 Either

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> Either a c -> Either b d -> Ordering Source

Eq2 Either

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> Either a c -> Either b d -> Bool Source

Bifunctor Either

Since: base-4.8.0.0

Instance details

Defined in Data.Bifunctor

Methods

bimap :: (a -> b) -> (c -> d) -> Either a c -> Either b d Source

first :: (a -> b) -> Either a c -> Either b c Source

second :: (b -> c) -> Either a b -> Either a c Source

Bifoldable Either

Since: base-4.10.0.0

Instance details

Defined in Data.Bifoldable

Methods

bifold :: Monoid m => Either m m -> m Source

bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Either a b -> m Source

bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Either a b -> c Source

bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Either a b -> c Source

Bitraversable Either

Since: base-4.10.0.0

Instance details

Defined in Data.Bitraversable

Methods

bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Either a b -> f (Either c d) Source

Monad (Either e)

Since: base-4.4.0.0

Instance details

Defined in Data.Either

Methods

(>>=) :: Either e a -> (a -> Either e b) -> Either e b Source

(>>) :: Either e a -> Either e b -> Either e b Source

return :: a -> Either e a Source

fail :: String -> Either e a Source

Functor (Either a)

Since: base-3.0

Instance details

Defined in Data.Either

Methods

fmap :: (a0 -> b) -> Either a a0 -> Either a b Source

(<$) :: a0 -> Either a b -> Either a a0 Source

MonadFix (Either e)

Since: base-4.3.0.0

Instance details

Defined in Control.Monad.Fix

Methods

mfix :: (a -> Either e a) -> Either e a Source

Applicative (Either e)

Since: base-3.0

Instance details

Defined in Data.Either

Methods

pure :: a -> Either e a Source

(<*>) :: Either e (a -> b) -> Either e a -> Either e b Source

liftA2 :: (a -> b -> c) -> Either e a -> Either e b -> Either e c Source

(*>) :: Either e a -> Either e b -> Either e b Source

(<*) :: Either e a -> Either e b -> Either e a Source

Foldable (Either a)

Since: base-4.7.0.0

Instance details

Defined in Data.Foldable

Methods

fold :: Monoid m => Either a m -> m Source

foldMap :: Monoid m => (a0 -> m) -> Either a a0 -> m Source

foldr :: (a0 -> b -> b) -> b -> Either a a0 -> b Source

foldr' :: (a0 -> b -> b) -> b -> Either a a0 -> b Source

foldl :: (b -> a0 -> b) -> b -> Either a a0 -> b Source

foldl' :: (b -> a0 -> b) -> b -> Either a a0 -> b Source

foldr1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source

foldl1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source

toList :: Either a a0 -> [a0] Source

null :: Either a a0 -> Bool Source

length :: Either a a0 -> Int Source

elem :: Eq a0 => a0 -> Either a a0 -> Bool Source

maximum :: Ord a0 => Either a a0 -> a0 Source

minimum :: Ord a0 => Either a a0 -> a0 Source

sum :: Num a0 => Either a a0 -> a0 Source

product :: Num a0 => Either a a0 -> a0 Source

Traversable (Either a)

Since: base-4.7.0.0

Instance details

Defined in Data.Traversable

Methods

traverse :: Applicative f => (a0 -> f b) -> Either a a0 -> f (Either a b) Source

sequenceA :: Applicative f => Either a (f a0) -> f (Either a a0) Source

mapM :: Monad m => (a0 -> m b) -> Either a a0 -> m (Either a b) Source

sequence :: Monad m => Either a (m a0) -> m (Either a a0) Source

Show a => Show1 (Either a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftShowsPrec :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> Int -> Either a a0 -> ShowS Source

liftShowList :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> [Either a a0] -> ShowS Source

Read a => Read1 (Either a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftReadsPrec :: (Int -> ReadS a0) -> ReadS [a0] -> Int -> ReadS (Either a a0) Source

liftReadList :: (Int -> ReadS a0) -> ReadS [a0] -> ReadS [Either a a0] Source

liftReadPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec (Either a a0) Source

liftReadListPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec [Either a a0] Source

Ord a => Ord1 (Either a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftCompare :: (a0 -> b -> Ordering) -> Either a a0 -> Either a b -> Ordering Source

Eq a => Eq1 (Either a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftEq :: (a0 -> b -> Bool) -> Either a a0 -> Either a b -> Bool Source

Generic1 (Either a :: Type -> Type)
Instance details

Defined in GHC.Generics

Associated Types

type Rep1 (Either a) :: k -> Type Source

Methods

from1 :: Either a a0 -> Rep1 (Either a) a0 Source

to1 :: Rep1 (Either a) a0 -> Either a a0 Source

(Eq a, Eq b) => Eq (Either a b)

Since: base-2.1

Instance details

Defined in Data.Either

Methods

(==) :: Either a b -> Either a b -> Bool Source

(/=) :: Either a b -> Either a b -> Bool Source

(Data a, Data b) => Data (Either a b)

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

gfoldl :: (forall d b0. Data d => c (d -> b0) -> d -> c b0) -> (forall g. g -> c g) -> Either a b -> c (Either a b) Source

gunfold :: (forall b0 r. Data b0 => c (b0 -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Either a b) Source

toConstr :: Either a b -> Constr Source

dataTypeOf :: Either a b -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Either a b)) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Either a b)) Source

gmapT :: (forall b0. Data b0 => b0 -> b0) -> Either a b -> Either a b Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Either a b -> r Source

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Either a b -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Either a b -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Either a b -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Either a b -> m (Either a b) Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Either a b -> m (Either a b) Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Either a b -> m (Either a b) Source

(Ord a, Ord b) => Ord (Either a b)

Since: base-2.1

Instance details

Defined in Data.Either

Methods

compare :: Either a b -> Either a b -> Ordering Source

(<) :: Either a b -> Either a b -> Bool Source

(<=) :: Either a b -> Either a b -> Bool Source

(>) :: Either a b -> Either a b -> Bool Source

(>=) :: Either a b -> Either a b -> Bool Source

max :: Either a b -> Either a b -> Either a b Source

min :: Either a b -> Either a b -> Either a b Source

(Read a, Read b) => Read (Either a b)

Since: base-3.0

Instance details

Defined in Data.Either

(Show a, Show b) => Show (Either a b)

Since: base-3.0

Instance details

Defined in Data.Either

Methods

showsPrec :: Int -> Either a b -> ShowS Source

show :: Either a b -> String Source

showList :: [Either a b] -> ShowS Source

Generic (Either a b)
Instance details

Defined in GHC.Generics

Associated Types

type Rep (Either a b) :: Type -> Type Source

Methods

from :: Either a b -> Rep (Either a b) x Source

to :: Rep (Either a b) x -> Either a b Source

Semigroup (Either a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Either

Methods

(<>) :: Either a b -> Either a b -> Either a b Source

sconcat :: NonEmpty (Either a b) -> Either a b Source

stimes :: Integral b0 => b0 -> Either a b -> Either a b Source

type Rep1 (Either a :: Type -> Type)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep (Either a b)

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

either :: (a -> c) -> (b -> c) -> Either a b -> c Source

Case analysis for the Either type. If the value is Left a, apply the first function to a; if it is Right b, apply the second function to b.

Examples
Expand

We create two values of type Either String Int, one using the Left constructor and another using the Right constructor. Then we apply "either" the length function (if we have a String) or the "times-two" function (if we have an Int):

>>> let s = Left "foo" :: Either String Int
>>> let n = Right 3 :: Either String Int
>>> either length (*2) s
3
>>> either length (*2) n
6

data Ordering Source

Constructors

LT
EQ
GT
Instances
Bounded Ordering

Since: base-2.1

Instance details

Defined in GHC.Enum

Enum Ordering

Since: base-2.1

Instance details

Defined in GHC.Enum

Eq Ordering
Instance details

Defined in GHC.Classes

Data Ordering

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Ordering -> c Ordering Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Ordering Source

toConstr :: Ordering -> Constr Source

dataTypeOf :: Ordering -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Ordering) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Ordering) Source

gmapT :: (forall b. Data b => b -> b) -> Ordering -> Ordering Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Ordering -> r Source

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Ordering -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Ordering -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Ordering -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Ordering -> m Ordering Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Ordering -> m Ordering Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Ordering -> m Ordering Source

Ord Ordering
Instance details

Defined in GHC.Classes

Read Ordering

Since: base-2.1

Instance details

Defined in GHC.Read

Show Ordering

Since: base-2.1

Instance details

Defined in GHC.Show

Ix Ordering

Since: base-2.1

Instance details

Defined in GHC.Arr

Generic Ordering
Instance details

Defined in GHC.Generics

Associated Types

type Rep Ordering :: Type -> Type Source

Semigroup Ordering

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Monoid Ordering

Since: base-2.1

Instance details

Defined in GHC.Base

type Rep Ordering

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

type Rep Ordering = D1 (MetaData "Ordering" "GHC.Types" "ghc-prim" False) (C1 (MetaCons "LT" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "EQ" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "GT" PrefixI False) (U1 :: Type -> Type)))

data Char Source

The character type Char is an enumeration whose values represent Unicode (or equivalently ISO/IEC 10646) code points (i.e. characters, see http://www.unicode.org/ for details). This set extends the ISO 8859-1 (Latin-1) character set (the first 256 characters), which is itself an extension of the ASCII character set (the first 128 characters). A character literal in Haskell has type Char.

To convert a Char to or from the corresponding Int value defined by Unicode, use toEnum and fromEnum from the Enum class respectively (or equivalently ord and chr).

Instances
Bounded Char

Since: base-2.1

Instance details

Defined in GHC.Enum

Enum Char

Since: base-2.1

Instance details

Defined in GHC.Enum

Eq Char
Instance details

Defined in GHC.Classes

Methods

(==) :: Char -> Char -> Bool Source

(/=) :: Char -> Char -> Bool Source

Data Char

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Char -> c Char Source

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Char Source

toConstr :: Char -> Constr Source

dataTypeOf :: Char -> DataType Source

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Char) Source

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Char) Source

gmapT :: (forall b. Data b => b -> b) -> Char -> Char Source

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Char -> r Source

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Char -> r Source

gmapQ :: (forall d. Data d => d -> u) -> Char -> [u] Source

gmapQi :: Int -> (forall d. Data d => d -> u) -> Char -> u Source

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Char -> m Char Source

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Char -> m Char Source

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Char -> m Char Source

Ord Char
Instance details

Defined in GHC.Classes

Methods

compare :: Char -> Char -> Ordering Source

(<) :: Char -> Char -> Bool Source

(<=) :: Char -> Char -> Bool Source

(>) :: Char -> Char -> Bool Source

(>=) :: Char -> Char -> Bool Source

max :: Char -> Char -> Char Source

min :: Char -> Char -> Char Source

Read Char

Since: base-2.1

Instance details

Defined in GHC.Read

Show Char

Since: base-2.1

Instance details

Defined in GHC.Show

Ix Char

Since: base-2.1

Instance details

Defined in GHC.Arr

Methods

range :: (Char, Char) -> [Char] Source

index :: (Char, Char) -> Char -> Int Source

unsafeIndex :: (Char, Char) -> Char -> Int

inRange :: (Char, Char) -> Char -> Bool Source

rangeSize :: (Char, Char) -> Int Source

unsafeRangeSize :: (Char, Char) -> Int

Storable Char

Since: base-2.1

Instance details

Defined in Foreign.Storable

IsChar Char

Since: base-2.1

Instance details

Defined in Text.Printf

Methods

toChar :: Char -> Char Source

fromChar :: Char -> Char Source

PrintfArg Char

Since: base-2.1

Instance details

Defined in Text.Printf

Generic1 (URec Char :: k -> Type)
Instance details

Defined in GHC.Generics

Associated Types

type Rep1 (URec Char) :: k -> Type Source

Methods

from1 :: URec Char a -> Rep1 (URec Char) a Source

to1 :: Rep1 (URec Char) a -> URec Char a Source

Functor (URec Char :: Type -> Type)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

fmap :: (a -> b) -> URec Char a -> URec Char b Source

(<$) :: a -> URec Char b -> URec Char a Source

Foldable (URec Char :: Type -> Type)

Since: base-4.9.0.0

Instance details

Defined in Data.Foldable

Methods

fold :: Monoid m => URec Char m -> m Source

foldMap :: Monoid m => (a -> m) -> URec Char a -> m Source

foldr :: (a -> b -> b) -> b -> URec Char a -> b Source

foldr' :: (a -> b -> b) -> b -> URec Char a -> b Source

foldl :: (b -> a -> b) -> b -> URec Char a -> b Source

foldl' :: (b -> a -> b) -> b -> URec Char a -> b Source

foldr1 :: (a -> a -> a) -> URec Char a -> a Source

foldl1 :: (a -> a -> a) -> URec Char a -> a Source

toList :: URec Char a -> [a] Source

null :: URec Char a -> Bool Source

length :: URec Char a -> Int Source

elem :: Eq a => a -> URec Char a -> Bool Source

maximum :: Ord a => URec Char a -> a Source

minimum :: Ord a => URec Char a -> a Source

sum :: Num a => URec Char a -> a Source

product :: Num a => URec Char a -> a Source

Traversable (URec Char :: Type -> Type)

Since: base-4.9.0.0

Instance details

Defined in Data.Traversable

Methods

traverse :: Applicative f => (a -> f b) -> URec Char a -> f (URec Char b) Source

sequenceA :: Applicative f => URec Char (f a) -> f (URec Char a) Source

mapM :: Monad m => (a -> m b) -> URec Char a -> m (URec Char b) Source

sequence :: Monad m => URec Char (m a) -> m (URec Char a) Source

Eq (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: URec Char p -> URec Char p -> Bool Source

(/=) :: URec Char p -> URec Char p -> Bool Source

Ord (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: URec Char p -> URec Char p -> Ordering Source

(<) :: URec Char p -> URec Char p -> Bool Source

(<=) :: URec Char p -> URec Char p -> Bool Source

(>) :: URec Char p -> URec Char p -> Bool Source

(>=) :: URec Char p -> URec Char p -> Bool Source

max :: URec Char p -> URec Char p -> URec Char p Source

min :: URec Char p -> URec Char p -> URec Char p Source

Show (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Generic (URec Char p)
Instance details

Defined in GHC.Generics

Associated Types

type Rep (URec Char p) :: Type -> Type Source

Methods

from :: URec Char p -> Rep (URec Char p) x Source

to :: Rep (URec Char p) x -> URec Char p Source

data URec Char (p :: k)

Used for marking occurrences of Char#

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

data URec Char (p :: k) = UChar {}
type Rep1 (URec Char :: k -> Type)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep1 (URec Char :: k -> Type) = D1 (MetaData "URec" "GHC.Generics" "base" False) (C1 (MetaCons "UChar" PrefixI True) (S1 (MetaSel (Just "uChar#") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (UChar :: k -> Type)))
type Rep (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

type Rep (URec Char p) = D1 (MetaData "URec" "GHC.Generics" "base" False) (C1 (MetaCons "UChar" PrefixI True) (S1 (MetaSel (Just "uChar#") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (UChar :: Type -> Type)))

type String = [Char] Source

A String is a list of characters. String constants in Haskell are values of type String.

Tuples

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

Extract the first component of a pair.

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

Extract the second component of a pair.

curry :: ((a, b) -> c) -> a -> b -> c Source

curry converts an uncurried function to a curried function.

Examples
Expand
>>> curry fst 1 2
1

uncurry :: (a -> b -> c) -> (a, b) -> c Source

uncurry converts a curried function to a function on pairs.

Examples
Expand
>>> uncurry (+) (1,2)
3
>>> uncurry ($) (show, 1)
"1"
>>> map (uncurry max) [(1,2), (3,4), (6,8)]
[2,4,8]

Basic type classes

class Eq a where Source

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:

Reflexivity
x == x = True
Symmetry
x == y = y == x
Transitivity
if x == y && y == z = True, then x == z = True
Substitutivity
if x == y = True and f is a "public" 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 Source

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

Instances
Eq Bool
Instance details

Defined in GHC.Classes

Methods

(==) :: Bool -> Bool -> Bool Source

(/=) :: Bool -> Bool -> Bool Source

Eq Char
Instance details

Defined in GHC.Classes

Methods

(==) :: Char -> Char -> Bool Source

(/=) :: Char -> Char -> Bool Source

Eq Double

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 details

Defined in GHC.Classes

Methods

(==) :: Double -> Double -> Bool Source

(/=) :: Double -> Double -> Bool Source

Eq Float

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 substitutivity:

>>> 0 == (-0 :: Float)
True
>>> recip 0 == recip (-0 :: Float)
False
Instance details

Defined in GHC.Classes

Methods

(==) :: Float -> Float -> Bool Source

(/=) :: Float -> Float -> Bool Source

Eq Int
Instance details

Defined in GHC.Classes

Methods

(==) :: Int -> Int -> Bool Source

(/=) :: Int -> Int -> Bool Source

Eq Int8

Since: base-2.1

Instance details

Defined in GHC.Int

Methods

(==) :: Int8 -> Int8 -> Bool Source

(/=) :: Int8 -> Int8 -> Bool Source

Eq Int16

Since: base-2.1

Instance details

Defined in GHC.Int

Methods

(==) :: Int16 -> Int16 -> Bool Source

(/=) :: Int16 -> Int16 -> Bool Source

Eq Int32

Since: base-2.1

Instance details

Defined in GHC.Int

Methods

(==) :: Int32 -> Int32 -> Bool Source

(/=) :: Int32 -> Int32 -> Bool Source

Eq Int64

Since: base-2.1

Instance details

Defined in GHC.Int

Methods

(==) :: Int64 -> Int64 -> Bool Source

(/=) :: Int64 -> Int64 -> Bool Source

Eq Integer
Instance details

Defined in GHC.Integer.Type

Eq Natural

Since: base-4.8.0.0

Instance details

Defined in GHC.Natural

Eq Ordering
Instance details

Defined in GHC.Classes

Eq Word
Instance details

Defined in GHC.Classes

Methods

(==) :: Word -> Word -> Bool Source

(/=) :: Word -> Word -> Bool Source

Eq Word8

Since: base-2.1

Instance details

Defined in GHC.Word

Methods

(==) :: Word8 -> Word8 -> Bool Source

(/=) :: Word8 -> Word8 -> Bool Source

Eq Word16

Since: base-2.1

Instance details

Defined in GHC.Word

Methods

(==) :: Word16 -> Word16 -> Bool Source

(/=) :: Word16 -> Word16 -> Bool Source

Eq Word32

Since: base-2.1

Instance details

Defined in GHC.Word

Methods

(==) :: Word32 -> Word32 -> Bool Source

(/=) :: Word32 -> Word32 -> Bool Source

Eq Word64

Since: base-2.1

Instance details

Defined in GHC.Word

Methods

(==) :: Word64 -> Word64 -> Bool Source

(/=) :: Word64 -> Word64 -> Bool Source

Eq SomeTypeRep
Instance details

Defined in Data.Typeable.Internal

Eq ()
Instance details

Defined in GHC.Classes

Methods

(==) :: () -> () -> Bool Source

(/=) :: () -> () -> Bool Source

Eq TyCon
Instance details

Defined in GHC.Classes

Methods

(==) :: TyCon -> TyCon -> Bool Source

(/=) :: TyCon -> TyCon -> Bool Source

Eq Module
Instance details

Defined in GHC.Classes

Methods

(==) :: Module -> Module -> Bool Source

(/=) :: Module -> Module -> Bool Source

Eq TrName
Instance details

Defined in GHC.Classes

Methods

(==) :: TrName -> TrName -> Bool Source

(/=) :: TrName -> TrName -> Bool Source

Eq BigNat
Instance details

Defined in GHC.Integer.Type

Methods

(==) :: BigNat -> BigNat -> Bool Source

(/=) :: BigNat -> BigNat -> Bool Source

Eq SrcLoc

Since: base-4.9.0.0

Instance details

Defined in GHC.Stack.Types

Methods

(==) :: SrcLoc -> SrcLoc -> Bool Source

(/=) :: SrcLoc -> SrcLoc -> Bool Source

Eq GeneralCategory

Since: base-2.1

Instance details

Defined in GHC.Unicode

Eq Number

Since: base-4.6.0.0

Instance details

Defined in Text.Read.Lex

Methods

(==) :: Number -> Number -> Bool Source

(/=) :: Number -> Number -> Bool Source

Eq Lexeme

Since: base-2.1

Instance details

Defined in Text.Read.Lex

Methods

(==) :: Lexeme -> Lexeme -> Bool Source

(/=) :: Lexeme -> Lexeme -> Bool Source

Eq Fingerprint

Since: base-4.4.0.0

Instance details

Defined in GHC.Fingerprint.Type

Eq IOMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.IOMode

Methods

(==) :: IOMode -> IOMode -> Bool Source

(/=) :: IOMode -> IOMode -> Bool Source

Eq IntPtr
Instance details

Defined in Foreign.Ptr

Methods

(==) :: IntPtr -> IntPtr -> Bool Source

(/=) :: IntPtr -> IntPtr -> Bool Source

Eq WordPtr
Instance details

Defined in Foreign.Ptr

Eq CUIntMax
Instance details

Defined in Foreign.C.Types

Eq CIntMax
Instance details

Defined in Foreign.C.Types

Eq CUIntPtr
Instance details

Defined in Foreign.C.Types

Eq CIntPtr
Instance details

Defined in Foreign.C.Types

Eq CSUSeconds
Instance details

Defined in Foreign.C.Types

Eq CUSeconds
Instance details

Defined in Foreign.C.Types

Eq CTime
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CTime -> CTime -> Bool Source

(/=) :: CTime -> CTime -> Bool Source

Eq CClock
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CClock -> CClock -> Bool Source

(/=) :: CClock -> CClock -> Bool Source

Eq CSigAtomic
Instance details

Defined in Foreign.C.Types

Eq CWchar
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CWchar -> CWchar -> Bool Source

(/=) :: CWchar -> CWchar -> Bool Source

Eq CSize
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CSize -> CSize -> Bool Source

(/=) :: CSize -> CSize -> Bool Source

Eq CPtrdiff
Instance details

Defined in Foreign.C.Types

Eq CDouble
Instance details

Defined in Foreign.C.Types

Eq CFloat
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CFloat -> CFloat -> Bool Source

(/=) :: CFloat -> CFloat -> Bool Source

Eq CBool
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CBool -> CBool -> Bool Source

(/=) :: CBool -> CBool -> Bool Source

Eq CULLong
Instance details

Defined in Foreign.C.Types

Eq CLLong
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CLLong -> CLLong -> Bool Source

(/=) :: CLLong -> CLLong -> Bool Source

Eq CULong
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CULong -> CULong -> Bool Source

(/=) :: CULong -> CULong -> Bool Source

Eq CLong
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CLong -> CLong -> Bool Source

(/=) :: CLong -> CLong -> Bool Source

Eq CUInt
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CUInt -> CUInt -> Bool Source

(/=) :: CUInt -> CUInt -> Bool Source

Eq CInt
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CInt -> CInt -> Bool Source

(/=) :: CInt -> CInt -> Bool Source

Eq CUShort
Instance details

Defined in Foreign.C.Types

Eq CShort
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CShort -> CShort -> Bool Source

(/=) :: CShort -> CShort -> Bool Source

Eq CUChar
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CUChar -> CUChar -> Bool Source

(/=) :: CUChar -> CUChar -> Bool Source

Eq CSChar
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CSChar -> CSChar -> Bool Source

(/=) :: CSChar -> CSChar -> Bool Source

Eq CChar
Instance details

Defined in Foreign.C.Types

Methods

(==) :: CChar -> CChar -> Bool Source

(/=) :: CChar -> CChar -> Bool Source

Eq SomeNat

Since: base-4.7.0.0

Instance details

Defined in GHC.TypeNats

Eq SomeSymbol

Since: base-4.7.0.0

Instance details

Defined in GHC.TypeLits

Eq DecidedStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Eq SourceStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Eq SourceUnpackedness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Eq Associativity

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Eq Fixity

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: Fixity -> Fixity -> Bool Source

(/=) :: Fixity -> Fixity -> Bool Source

Eq Any

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

(==) :: Any -> Any -> Bool Source

(/=) :: Any -> Any -> Bool Source

Eq All

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

(==) :: All -> All -> Bool Source

(/=) :: All -> All -> Bool Source

Eq ArithException

Since: base-3.0

Instance details

Defined in GHC.Exception.Type

Eq ErrorCall

Since: base-4.7.0.0

Instance details

Defined in GHC.Exception

Eq IOException

Since: base-4.1.0.0

Instance details

Defined in GHC.IO.Exception

Eq MaskingState

Since: base-4.3.0.0

Instance details

Defined in GHC.IO

Eq BufferState

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Buffer

Eq CodingProgress

Since: base-4.4.0.0

Instance details

Defined in GHC.IO.Encoding.Types

Eq SeekMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Device

Eq IODeviceType

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Device

Eq NewlineMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Handle.Types

Eq Newline

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Handle.Types

Eq BufferMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Handle.Types

Eq Handle

Since: base-4.1.0.0

Instance details

Defined in GHC.IO.Handle.Types

Methods

(==) :: Handle -> Handle -> Bool Source

(/=) :: Handle -> Handle -> Bool Source

Eq IOErrorType

Since: base-4.1.0.0

Instance details

Defined in GHC.IO.Exception

Eq ExitCode
Instance details

Defined in GHC.IO.Exception

Eq ArrayException

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Exception

Eq AsyncException

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Exception

Eq Errno

Since: base-2.1

Instance details

Defined in Foreign.C.Error

Methods

(==) :: Errno -> Errno -> Bool Source

(/=) :: Errno -> Errno -> Bool Source

Eq Fd
Instance details

Defined in System.Posix.Types

Methods

(==) :: Fd -> Fd -> Bool Source

(/=) :: Fd -> Fd -> Bool Source

Eq CTimer
Instance details

Defined in System.Posix.Types

Methods

(==) :: CTimer -> CTimer -> Bool Source

(/=) :: CTimer -> CTimer -> Bool Source

Eq CKey
Instance details

Defined in System.Posix.Types

Methods

(==) :: CKey -> CKey -> Bool Source

(/=) :: CKey -> CKey -> Bool Source

Eq CId
Instance details

Defined in System.Posix.Types

Methods

(==) :: CId -> CId -> Bool Source

(/=) :: CId -> CId -> Bool Source

Eq CFsFilCnt
Instance details

Defined in System.Posix.Types

Eq CFsBlkCnt
Instance details

Defined in System.Posix.Types

Eq CClockId
Instance details

Defined in System.Posix.Types

Eq CBlkCnt
Instance details

Defined in System.Posix.Types

Eq CBlkSize
Instance details

Defined in System.Posix.Types

Eq CRLim
Instance details

Defined in System.Posix.Types

Methods

(==) :: CRLim -> CRLim -> Bool Source

(/=) :: CRLim -> CRLim -> Bool Source

Eq CTcflag
Instance details

Defined in System.Posix.Types

Eq CSpeed
Instance details

Defined in System.Posix.Types

Methods

(==) :: CSpeed -> CSpeed -> Bool Source

(/=) :: CSpeed -> CSpeed -> Bool Source

Eq CCc
Instance details

Defined in System.Posix.Types

Methods

(==) :: CCc -> CCc -> Bool Source

(/=) :: CCc -> CCc -> Bool Source

Eq CUid
Instance details

Defined in System.Posix.Types

Methods

(==) :: CUid -> CUid -> Bool Source

(/=) :: CUid -> CUid -> Bool Source

Eq CNlink
Instance details

Defined in System.Posix.Types

Methods

(==) :: CNlink -> CNlink -> Bool Source

(/=) :: CNlink -> CNlink -> Bool Source

Eq CGid
Instance details

Defined in System.Posix.Types

Methods

(==) :: CGid -> CGid -> Bool Source

(/=) :: CGid -> CGid -> Bool Source

Eq CSsize
Instance details

Defined in System.Posix.Types

Methods

(==) :: CSsize -> CSsize -> Bool Source

(/=) :: CSsize -> CSsize -> Bool Source

Eq CPid
Instance details

Defined in System.Posix.Types

Methods

(==) :: CPid -> CPid -> Bool Source

(/=) :: CPid -> CPid -> Bool Source

Eq COff
Instance details

Defined in System.Posix.Types

Methods

(==) :: COff -> COff -> Bool Source

(/=) :: COff -> COff -> Bool Source

Eq CMode
Instance details

Defined in System.Posix.Types

Methods

(==) :: CMode -> CMode -> Bool Source

(/=) :: CMode -> CMode -> Bool Source

Eq CIno
Instance details

Defined in System.Posix.Types

Methods

(==) :: CIno -> CIno -> Bool Source

(/=) :: CIno -> CIno -> Bool Source

Eq CDev
Instance details

Defined in System.Posix.Types

Methods

(==) :: CDev -> CDev -> Bool Source

(/=) :: CDev -> CDev -> Bool Source

Eq Lifetime

Since: base-4.8.1.0

Instance details

Defined in GHC.Event.Internal

Eq Event

Since: base-4.4.0.0

Instance details

Defined in GHC.Event.Internal

Methods

(==) :: Event -> Event -> Bool Source

(/=) :: Event -> Event -> Bool Source

Eq ThreadStatus

Since: base-4.3.0.0

Instance details

Defined in GHC.Conc.Sync

Eq BlockReason

Since: base-4.3.0.0

Instance details

Defined in GHC.Conc.Sync

Eq ThreadId

Since: base-4.2.0.0

Instance details

Defined in GHC.Conc.Sync

Eq TimeoutKey

Since: base-4.7.0.0

Instance details

Defined in GHC.Event.TimerManager

Eq FdKey

Since: base-4.4.0.0

Instance details

Defined in GHC.Event.Manager

Methods

(==) :: FdKey -> FdKey -> Bool Source

(/=) :: FdKey -> FdKey -> Bool Source

Eq HandlePosn

Since: base-4.1.0.0

Instance details

Defined in GHC.IO.Handle

Eq Version

Since: base-2.1

Instance details

Defined in Data.Version

Eq ByteOrder

Since: base-4.11.0.0

Instance details

Defined in GHC.ByteOrder

Eq Unique
Instance details

Defined in Data.Unique

Methods

(==) :: Unique -> Unique -> Bool Source

(/=) :: Unique -> Unique -> Bool Source

Eq Fixity

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

(==) :: Fixity -> Fixity -> Bool Source

(/=) :: Fixity -> Fixity -> Bool Source

Eq ConstrRep

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Eq DataRep

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Eq Constr

Equality of constructors

Since: base-4.0.0.0

Instance details

Defined in Data.Data

Methods

(==) :: Constr -> Constr -> Bool Source

(/=) :: Constr -> Constr -> Bool Source

Eq SpecConstrAnnotation

Since: base-4.3.0.0

Instance details

Defined in GHC.Exts

Eq Void

Since: base-4.8.0.0

Instance details

Defined in Data.Void

Methods

(==) :: Void -> Void -> Bool Source

(/=) :: Void -> Void -> Bool Source

Eq a => Eq [a]
Instance details

Defined in GHC.Classes

Methods

(==) :: [a] -> [a] -> Bool Source

(/=) :: [a] -> [a] -> Bool Source

Eq a => Eq (Maybe a)

Since: base-2.1

Instance details

Defined in GHC.Maybe

Methods

(==) :: Maybe a -> Maybe a -> Bool Source

(/=) :: Maybe a -> Maybe a -> Bool Source

Eq a => Eq (Ratio a)

Since: base-2.1

Instance details

Defined in GHC.Real

Methods

(==) :: Ratio a -> Ratio a -> Bool Source

(/=) :: Ratio a -> Ratio a -> Bool Source

Eq (StablePtr a)

Since: base-2.1

Instance details

Defined in GHC.Stable

Methods

(==) :: StablePtr a -> StablePtr a -> Bool Source

(/=) :: StablePtr a -> StablePtr a -> Bool Source

Eq (Ptr a)

Since: base-2.1

Instance details

Defined in GHC.Ptr

Methods

(==) :: Ptr a -> Ptr a -> Bool Source

(/=) :: Ptr a -> Ptr a -> Bool Source

Eq (FunPtr a)
Instance details

Defined in GHC.Ptr

Methods

(==) :: FunPtr a -> FunPtr a -> Bool Source

(/=) :: FunPtr a -> FunPtr a -> Bool Source

Eq p => Eq (Par1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: Par1 p -> Par1 p -> Bool Source

(/=) :: Par1 p -> Par1 p -> Bool Source

Eq a => Eq (NonEmpty a)

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Methods

(==) :: NonEmpty a -> NonEmpty a -> Bool Source

(/=) :: NonEmpty a -> NonEmpty a -> Bool Source

Eq (MVar a)

Since: base-4.1.0.0

Instance details

Defined in GHC.MVar

Methods

(==) :: MVar a -> MVar a -> Bool Source

(/=) :: MVar a -> MVar a -> Bool Source

Eq a => Eq (Down a)

Since: base-4.6.0.0

Instance details

Defined in Data.Ord

Methods

(==) :: Down a -> Down a -> Bool Source

(/=) :: Down a -> Down a -> Bool Source

Eq a => Eq (Product a)

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

(==) :: Product a -> Product a -> Bool Source

(/=) :: Product a -> Product a -> Bool Source

Eq a => Eq (Sum a)

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

(==) :: Sum a -> Sum a -> Bool Source

(/=) :: Sum a -> Sum a -> Bool Source

Eq a => Eq (Dual a)

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

(==) :: Dual a -> Dual a -> Bool Source

(/=) :: Dual a -> Dual a -> Bool Source

Eq a => Eq (Last a)

Since: base-2.1

Instance details

Defined in Data.Monoid

Methods

(==) :: Last a -> Last a -> Bool Source

(/=) :: Last a -> Last a -> Bool Source

Eq a => Eq (First a)

Since: base-2.1

Instance details

Defined in Data.Monoid

Methods

(==) :: First a -> First a -> Bool Source

(/=) :: First a -> First a -> Bool Source

Eq (IORef a)

^ Pointer equality.

Since: base-4.1.0.0

Instance details

Defined in GHC.IORef

Methods

(==) :: IORef a -> IORef a -> Bool Source

(/=) :: IORef a -> IORef a -> Bool Source

Eq (ForeignPtr a)

Since: base-2.1

Instance details

Defined in GHC.ForeignPtr

Eq (TVar a)

Since: base-4.8.0.0

Instance details

Defined in GHC.Conc.Sync

Methods

(==) :: TVar a -> TVar a -> Bool Source

(/=) :: TVar a -> TVar a -> Bool Source

Eq a => Eq (Identity a)

Since: base-4.8.0.0

Instance details

Defined in Data.Functor.Identity

Methods

(==) :: Identity a -> Identity a -> Bool Source

(/=) :: Identity a -> Identity a -> Bool Source

Eq a => Eq (ZipList a)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

Methods

(==) :: ZipList a -> ZipList a -> Bool Source

(/=) :: ZipList a -> ZipList a -> Bool Source

Eq (StableName a)

Since: base-2.1

Instance details

Defined in GHC.StableName

Eq (Chan a)

Since: base-4.4.0.0

Instance details

Defined in Control.Concurrent.Chan

Methods

(==) :: Chan a -> Chan a -> Bool Source

(/=) :: Chan a -> Chan a -> Bool Source

Eq a => Eq (Option a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

(==) :: Option a -> Option a -> Bool Source

(/=) :: Option a -> Option a -> Bool Source

Eq m => Eq (WrappedMonoid m)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Eq a => Eq (Last a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

(==) :: Last a -> Last a -> Bool Source

(/=) :: Last a -> Last a -> Bool Source

Eq a => Eq (First a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

(==) :: First a -> First a -> Bool Source

(/=) :: First a -> First a -> Bool Source

Eq a => Eq (Max a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

(==) :: Max a -> Max a -> Bool Source

(/=) :: Max a -> Max a -> Bool Source

Eq a => Eq (Min a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

(==) :: Min a -> Min a -> Bool Source

(/=) :: Min a -> Min a -> Bool Source

Eq (Fixed a)

Since: base-2.1

Instance details

Defined in Data.Fixed

Methods

(==) :: Fixed a -> Fixed a -> Bool Source

(/=) :: Fixed a -> Fixed a -> Bool Source

Eq a => Eq (Complex a)

Since: base-2.1

Instance details

Defined in Data.Complex

Methods

(==) :: Complex a -> Complex a -> Bool Source

(/=) :: Complex a -> Complex a -> Bool Source

(Eq a, Eq b) => Eq (Either a b)

Since: base-2.1

Instance details

Defined in Data.Either

Methods

(==) :: Either a b -> Either a b -> Bool Source

(/=) :: Either a b -> Either a b -> Bool Source

Eq (V1 p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: V1 p -> V1 p -> Bool Source

(/=) :: V1 p -> V1 p -> Bool Source

Eq (U1 p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: U1 p -> U1 p -> Bool Source

(/=) :: U1 p -> U1 p -> Bool Source

Eq (TypeRep a)

Since: base-2.1

Instance details

Defined in Data.Typeable.Internal

Methods

(==) :: TypeRep a -> TypeRep a -> Bool Source

(/=) :: TypeRep a -> TypeRep a -> Bool Source

(Eq a, Eq b) => Eq (a, b)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b) -> (a, b) -> Bool Source

(/=) :: (a, b) -> (a, b) -> Bool Source

Eq (STRef s a)

Pointer equality.

Since: base-2.1

Instance details

Defined in GHC.STRef

Methods

(==) :: STRef s a -> STRef s a -> Bool Source

(/=) :: STRef s a -> STRef s a -> Bool Source

Eq (Proxy s)

Since: base-4.7.0.0

Instance details

Defined in Data.Proxy

Methods

(==) :: Proxy s -> Proxy s -> Bool Source

(/=) :: Proxy s -> Proxy s -> Bool Source

Eq a => Eq (Arg a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

(==) :: Arg a b -> Arg a b -> Bool Source

(/=) :: Arg a b -> Arg a b -> Bool Source

Eq (f p) => Eq (Rec1 f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: Rec1 f p -> Rec1 f p -> Bool Source

(/=) :: Rec1 f p -> Rec1 f p -> Bool Source

Eq (URec Word p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: URec Word p -> URec Word p -> Bool Source

(/=) :: URec Word p -> URec Word p -> Bool Source

Eq (URec Int p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: URec Int p -> URec Int p -> Bool Source

(/=) :: URec Int p -> URec Int p -> Bool Source

Eq (URec Float p)
Instance details

Defined in GHC.Generics

Methods

(==) :: URec Float p -> URec Float p -> Bool Source

(/=) :: URec Float p -> URec Float p -> Bool Source

Eq (URec Double p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: URec Double p -> URec Double p -> Bool Source

(/=) :: URec Double p -> URec Double p -> Bool Source

Eq (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: URec Char p -> URec Char p -> Bool Source

(/=) :: URec Char p -> URec Char p -> Bool Source

Eq (URec (Ptr ()) p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source

(/=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source

(Eq a, Eq b, Eq c) => Eq (a, b, c)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c) -> (a, b, c) -> Bool Source

(/=) :: (a, b, c) -> (a, b, c) -> Bool Source

Eq (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

(==) :: (a :~: b) -> (a :~: b) -> Bool Source

(/=) :: (a :~: b) -> (a :~: b) -> Bool Source

Eq (Coercion a b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Coercion

Methods

(==) :: Coercion a b -> Coercion a b -> Bool Source

(/=) :: Coercion a b -> Coercion a b -> Bool Source

Eq (f a) => Eq (Alt f a)

Since: base-4.8.0.0

Instance details

Defined in Data.Semigroup.Internal

Methods

(==) :: Alt f a -> Alt f a -> Bool Source

(/=) :: Alt f a -> Alt f a -> Bool Source

Eq (f a) => Eq (Ap f a)

Since: base-4.12.0.0

Instance details

Defined in Data.Monoid

Methods

(==) :: Ap f a -> Ap f a -> Bool Source

(/=) :: Ap f a -> Ap f a -> Bool Source

Eq a => Eq (Const a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

(==) :: Const a b -> Const a b -> Bool Source

(/=) :: Const a b -> Const a b -> Bool Source

Eq c => Eq (K1 i c p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: K1 i c p -> K1 i c p -> Bool Source

(/=) :: K1 i c p -> K1 i c p -> Bool Source

(Eq (f p), Eq (g p)) => Eq ((f :+: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: (f :+: g) p -> (f :+: g) p -> Bool Source

(/=) :: (f :+: g) p -> (f :+: g) p -> Bool Source

(Eq (f p), Eq (g p)) => Eq ((f :*: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: (f :*: g) p -> (f :*: g) p -> Bool Source

(/=) :: (f :*: g) p -> (f :*: g) p -> Bool Source

(Eq a, Eq b, Eq c, Eq d) => Eq (a, b, c, d)
Instance details

Defined in GHC.Classes

Methods

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

(/=) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source

Eq (a :~~: b)

Since: base-4.10.0.0

Instance details

Defined in Data.Type.Equality

Methods

(==) :: (a :~~: b) -> (a :~~: b) -> Bool Source

(/=) :: (a :~~: b) -> (a :~~: b) -> Bool Source

(Eq1 f, Eq1 g, Eq a) => Eq (Sum f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Sum

Methods

(==) :: Sum f g a -> Sum f g a -> Bool Source

(/=) :: Sum f g a -> Sum f g a -> Bool Source

(Eq1 f, Eq1 g, Eq a) => Eq (Product f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Product

Methods

(==) :: Product f g a -> Product f g a -> Bool Source

(/=) :: Product f g a -> Product f g a -> Bool Source

Eq (f p) => Eq (M1 i c f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: M1 i c f p -> M1 i c f p -> Bool Source

(/=) :: M1 i c f p -> M1 i c f p -> Bool Source

Eq (f (g p)) => Eq ((f :.: g) p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

(==) :: (f :.: g) p -> (f :.: g) p -> Bool Source

(/=) :: (f :.: g) p -> (f :.: g) p -> Bool Source

(Eq a, Eq b, Eq c, Eq d, Eq e) => Eq (a, b, c, d, e)
Instance details

Defined in GHC.Classes

Methods

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

(/=) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source

(Eq1 f, Eq1 g, Eq a) => Eq (Compose f g a)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Compose

Methods

(==) :: Compose f g a -> Compose f g a -> Bool Source

(/=) :: Compose f g a -> Compose f g a -> Bool Source

(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f) => Eq (a, b, c, d, e, f)
Instance details

Defined in GHC.Classes

Methods

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

(/=) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source

(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g) => Eq (a, b, c, d, e, f, g)
Instance details

Defined in GHC.Classes

Methods

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

(/=) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source

(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)
Instance details

Defined in GHC.Classes

Methods

(==) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source

(/=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source

class Eq a => Ord a where Source

The Ord class is used for totally ordered datatypes.

Instances of Ord can be derived for any user-defined datatype whose constituent types are in Ord. The declared order of the constructors in the data declaration determines the ordering in derived Ord instances. The Ordering datatype allows a single comparison to determine the precise ordering of two objects.

The Haskell Report defines no laws for Ord. However, <= is customarily expected to implement a non-strict partial order and have the following properties:

Transitivity
if x <= y && y <= z = True, then x <= z = True
Reflexivity
x <= x = True
Antisymmetry
if x <= y && y <= x = True, then x == y = True

Note that the following operator interactions are expected to hold:

  1. x >= y = y <= x
  2. x < y = x <= y && x /= y
  3. x > y = y < x
  4. x < y = compare x y == LT
  5. x > y = compare x y == GT
  6. x == y = compare x y == EQ
  7. min x y == if x <= y then x else y = True
  8. max x y == if x >= y then x else y = True

Minimal complete definition: either compare or <=. Using compare can be more efficient for complex types.

Minimal complete definition

compare | (<=)

Methods

compare :: a -> a -> Ordering Source

(<) :: a -> a -> Bool infix 4 Source

(<=) :: a -> a -> Bool infix 4 Source

(>) :: a -> a -> Bool infix 4 Source

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

max :: a -> a -> a Source

min :: a -> a -> a Source

Instances
Ord Bool
Instance details

Defined in GHC.Classes

Methods

compare :: Bool -> Bool -> Ordering Source

(<) :: Bool -> Bool -> Bool Source

(<=) :: Bool -> Bool -> Bool Source

(>) :: Bool -> Bool -> Bool Source

(>=) :: Bool -> Bool -> Bool Source

max :: Bool -> Bool -> Bool Source

min :: Bool -> Bool -> Bool Source

Ord Char
Instance details

Defined in GHC.Classes

Methods

compare :: Char -> Char -> Ordering Source

(<) :: Char -> Char -> Bool Source

(<=) :: Char -> Char -> Bool Source

(>) :: Char -> Char -> Bool Source

(>=) :: Char -> Char -> Bool Source

max :: Char -> Char -> Char Source

min :: Char -> Char -> Char Source

Ord Double

Note that due to the presence of NaN, Double's Ord instance does not satisfy reflexivity.

>>> 0/0 <= (0/0 :: Double)
False

Also note that, due to the same, Ord's operator interactions are not respected by Double's instance:

>>> (0/0 :: Double) > 1
False
>>> compare (0/0 :: Double) 1
GT
Instance details

Defined in GHC.Classes

Ord Float

Note that due to the presence of NaN, Float's Ord instance does not satisfy reflexivity.

>>> 0/0 <= (0/0 :: Float)
False

Also note that, due to the same, Ord's operator interactions are not respected by Float's instance:

>>> (0/0 :: Float) > 1
False
>>> compare (0/0 :: Float) 1
GT
Instance details

Defined in GHC.Classes

Ord Int
Instance details

Defined in GHC.Classes

Methods

compare :: Int -> Int -> Ordering Source

(<) :: Int -> Int -> Bool Source

(<=) :: Int -> Int -> Bool Source

(>) :: Int -> Int -> Bool Source

(>=) :: Int -> Int -> Bool Source

max :: Int -> Int -> Int Source

min :: Int -> Int -> Int Source

Ord Int8

Since: base-2.1

Instance details

Defined in GHC.Int

Methods

compare :: Int8 -> Int8 -> Ordering Source

(<) :: Int8 -> Int8 -> Bool Source

(<=) :: Int8 -> Int8 -> Bool Source

(>) :: Int8 -> Int8 -> Bool Source

(>=) :: Int8 -> Int8 -> Bool Source

max :: Int8 -> Int8 -> Int8 Source

min :: Int8 -> Int8 -> Int8 Source

Ord Int16

Since: base-2.1

Instance details

Defined in GHC.Int

Ord Int32

Since: base-2.1

Instance details

Defined in GHC.Int

Ord Int64

Since: base-2.1

Instance details

Defined in GHC.Int

Ord Integer
Instance details

Defined in GHC.Integer.Type

Ord Natural

Since: base-4.8.0.0

Instance details

Defined in GHC.Natural

Ord Ordering
Instance details

Defined in GHC.Classes

Ord Word
Instance details

Defined in GHC.Classes

Methods

compare :: Word -> Word -> Ordering Source

(<) :: Word -> Word -> Bool Source

(<=) :: Word -> Word -> Bool Source

(>) :: Word -> Word -> Bool Source

(>=) :: Word -> Word -> Bool Source

max :: Word -> Word -> Word Source

min :: Word -> Word -> Word Source

Ord Word8

Since: base-2.1

Instance details

Defined in GHC.Word

Ord Word16

Since: base-2.1

Instance details

Defined in GHC.Word

Ord Word32

Since: base-2.1

Instance details

Defined in GHC.Word

Ord Word64

Since: base-2.1

Instance details

Defined in GHC.Word

Ord SomeTypeRep
Instance details

Defined in Data.Typeable.Internal

Ord ()
Instance details

Defined in GHC.Classes

Methods

compare :: () -> () -> Ordering Source

(<) :: () -> () -> Bool Source

(<=) :: () -> () -> Bool Source

(>) :: () -> () -> Bool Source

(>=) :: () -> () -> Bool Source

max :: () -> () -> () Source

min :: () -> () -> () Source

Ord TyCon
Instance details

Defined in GHC.Classes

Ord BigNat
Instance details

Defined in GHC.Integer.Type

Ord GeneralCategory

Since: base-2.1

Instance details

Defined in GHC.Unicode

Ord Fingerprint

Since: base-4.4.0.0

Instance details

Defined in GHC.Fingerprint.Type

Ord IOMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.IOMode

Ord IntPtr
Instance details

Defined in Foreign.Ptr

Ord WordPtr
Instance details

Defined in Foreign.Ptr

Ord CUIntMax
Instance details

Defined in Foreign.C.Types

Ord CIntMax
Instance details

Defined in Foreign.C.Types

Ord CUIntPtr
Instance details

Defined in Foreign.C.Types

Ord CIntPtr
Instance details

Defined in Foreign.C.Types

Ord CSUSeconds
Instance details

Defined in Foreign.C.Types

Ord CUSeconds
Instance details

Defined in Foreign.C.Types

Ord CTime
Instance details

Defined in Foreign.C.Types

Ord CClock
Instance details

Defined in Foreign.C.Types

Ord CSigAtomic
Instance details

Defined in Foreign.C.Types

Ord CWchar
Instance details

Defined in Foreign.C.Types

Ord CSize
Instance details

Defined in Foreign.C.Types

Ord CPtrdiff
Instance details

Defined in Foreign.C.Types

Ord CDouble
Instance details

Defined in Foreign.C.Types

Ord CFloat
Instance details

Defined in Foreign.C.Types

Ord CBool
Instance details

Defined in Foreign.C.Types

Ord CULLong
Instance details

Defined in Foreign.C.Types

Ord CLLong
Instance details

Defined in Foreign.C.Types

Ord CULong
Instance details

Defined in Foreign.C.Types

Ord CLong
Instance details

Defined in Foreign.C.Types

Ord CUInt
Instance details

Defined in Foreign.C.Types

Ord CInt
Instance details

Defined in Foreign.C.Types

Methods

compare :: CInt -> CInt -> Ordering Source

(<) :: CInt -> CInt -> Bool Source

(<=) :: CInt -> CInt -> Bool Source

(>) :: CInt -> CInt -> Bool Source

(>=) :: CInt -> CInt -> Bool Source

max :: CInt -> CInt -> CInt Source

min :: CInt -> CInt -> CInt Source

Ord CUShort
Instance details

Defined in Foreign.C.Types

Ord CShort
Instance details

Defined in Foreign.C.Types

Ord CUChar
Instance details

Defined in Foreign.C.Types

Ord CSChar
Instance details

Defined in Foreign.C.Types

Ord CChar
Instance details

Defined in Foreign.C.Types

Ord SomeNat

Since: base-4.7.0.0

Instance details

Defined in GHC.TypeNats

Ord SomeSymbol

Since: base-4.7.0.0

Instance details

Defined in GHC.TypeLits

Ord DecidedStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ord SourceStrictness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ord SourceUnpackedness

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ord Associativity

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Ord Fixity

Since: base-4.6.0.0

Instance details

Defined in GHC.Generics

Ord Any

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

compare :: Any -> Any -> Ordering Source

(<) :: Any -> Any -> Bool Source

(<=) :: Any -> Any -> Bool Source

(>) :: Any -> Any -> Bool Source

(>=) :: Any -> Any -> Bool Source

max :: Any -> Any -> Any Source

min :: Any -> Any -> Any Source

Ord All

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

compare :: All -> All -> Ordering Source

(<) :: All -> All -> Bool Source

(<=) :: All -> All -> Bool Source

(>) :: All -> All -> Bool Source

(>=) :: All -> All -> Bool Source

max :: All -> All -> All Source

min :: All -> All -> All Source

Ord ArithException

Since: base-3.0

Instance details

Defined in GHC.Exception.Type

Ord ErrorCall

Since: base-4.7.0.0

Instance details

Defined in GHC.Exception

Ord SeekMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Device

Ord NewlineMode

Since: base-4.3.0.0

Instance details

Defined in GHC.IO.Handle.Types

Ord Newline

Since: base-4.3.0.0

Instance details

Defined in GHC.IO.Handle.Types

Ord BufferMode

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Handle.Types

Ord ExitCode
Instance details

Defined in GHC.IO.Exception

Ord ArrayException

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Exception

Ord AsyncException

Since: base-4.2.0.0

Instance details

Defined in GHC.IO.Exception

Ord Fd
Instance details

Defined in System.Posix.Types

Methods

compare :: Fd -> Fd -> Ordering Source

(<) :: Fd -> Fd -> Bool Source

(<=) :: Fd -> Fd -> Bool Source

(>) :: Fd -> Fd -> Bool Source

(>=) :: Fd -> Fd -> Bool Source

max :: Fd -> Fd -> Fd Source

min :: Fd -> Fd -> Fd Source

Ord CTimer
Instance details

Defined in System.Posix.Types

Ord CKey
Instance details

Defined in System.Posix.Types

Methods

compare :: CKey -> CKey -> Ordering Source

(<) :: CKey -> CKey -> Bool Source

(<=) :: CKey -> CKey -> Bool Source

(>) :: CKey -> CKey -> Bool Source

(>=) :: CKey -> CKey -> Bool Source

max :: CKey -> CKey -> CKey Source

min :: CKey -> CKey -> CKey Source

Ord CId
Instance details

Defined in System.Posix.Types

Methods

compare :: CId -> CId -> Ordering Source

(<) :: CId -> CId -> Bool Source

(<=) :: CId -> CId -> Bool Source

(>) :: CId -> CId -> Bool Source

(>=) :: CId -> CId -> Bool Source

max :: CId -> CId -> CId Source

min :: CId -> CId -> CId Source

Ord CFsFilCnt
Instance details

Defined in System.Posix.Types

Ord CFsBlkCnt
Instance details

Defined in System.Posix.Types

Ord CClockId
Instance details

Defined in System.Posix.Types

Ord CBlkCnt
Instance details

Defined in System.Posix.Types

Ord CBlkSize
Instance details

Defined in System.Posix.Types

Ord CRLim
Instance details

Defined in System.Posix.Types

Ord CTcflag
Instance details

Defined in System.Posix.Types

Ord CSpeed
Instance details

Defined in System.Posix.Types

Ord CCc
Instance details

Defined in System.Posix.Types

Methods

compare :: CCc -> CCc -> Ordering Source

(<) :: CCc -> CCc -> Bool Source

(<=) :: CCc -> CCc -> Bool Source

(>) :: CCc -> CCc -> Bool Source

(>=) :: CCc -> CCc -> Bool Source

max :: CCc -> CCc -> CCc Source

min :: CCc -> CCc -> CCc Source

Ord CUid
Instance details

Defined in System.Posix.Types

Methods

compare :: CUid -> CUid -> Ordering Source

(<) :: CUid -> CUid -> Bool Source

(<=) :: CUid -> CUid -> Bool Source

(>) :: CUid -> CUid -> Bool Source

(>=) :: CUid -> CUid -> Bool Source

max :: CUid -> CUid -> CUid Source

min :: CUid -> CUid -> CUid Source

Ord CNlink
Instance details

Defined in System.Posix.Types

Ord CGid
Instance details

Defined in System.Posix.Types

Methods

compare :: CGid -> CGid -> Ordering Source

(<) :: CGid -> CGid -> Bool Source

(<=) :: CGid -> CGid -> Bool Source

(>) :: CGid -> CGid -> Bool Source

(>=) :: CGid -> CGid -> Bool Source

max :: CGid -> CGid -> CGid Source

min :: CGid -> CGid -> CGid Source

Ord CSsize
Instance details

Defined in System.Posix.Types

Ord CPid
Instance details

Defined in System.Posix.Types

Methods

compare :: CPid -> CPid -> Ordering Source

(<) :: CPid -> CPid -> Bool Source

(<=) :: CPid -> CPid -> Bool Source

(>) :: CPid -> CPid -> Bool Source

(>=) :: CPid -> CPid -> Bool Source

max :: CPid -> CPid -> CPid Source

min :: CPid -> CPid -> CPid Source

Ord COff
Instance details

Defined in System.Posix.Types

Methods

compare :: COff -> COff -> Ordering Source

(<) :: COff -> COff -> Bool Source

(<=) :: COff -> COff -> Bool Source

(>) :: COff -> COff -> Bool Source

(>=) :: COff -> COff -> Bool Source

max :: COff -> COff -> COff Source

min :: COff -> COff -> COff Source

Ord CMode
Instance details

Defined in System.Posix.Types

Ord CIno
Instance details

Defined in System.Posix.Types

Methods

compare :: CIno -> CIno -> Ordering Source

(<) :: CIno -> CIno -> Bool Source

(<=) :: CIno -> CIno -> Bool Source

(>) :: CIno -> CIno -> Bool Source

(>=) :: CIno -> CIno -> Bool Source

max :: CIno -> CIno -> CIno Source

min :: CIno -> CIno -> CIno Source

Ord CDev
Instance details

Defined in System.Posix.Types

Methods

compare :: CDev -> CDev -> Ordering Source

(<) :: CDev -> CDev -> Bool Source

(<=) :: CDev -> CDev -> Bool Source

(>) :: CDev -> CDev -> Bool Source

(>=) :: CDev -> CDev -> Bool Source

max :: CDev -> CDev -> CDev Source

min :: CDev -> CDev -> CDev Source

Ord ThreadStatus

Since: base-4.3.0.0

Instance details

Defined in GHC.Conc.Sync

Ord BlockReason

Since: base-4.3.0.0

Instance details

Defined in GHC.Conc.Sync

Ord ThreadId

Since: base-4.2.0.0

Instance details

Defined in GHC.Conc.Sync

Ord Version

Since: base-2.1

Instance details

Defined in Data.Version

Ord ByteOrder

Since: base-4.11.0.0

Instance details

Defined in GHC.ByteOrder

Ord Unique
Instance details

Defined in Data.Unique

Ord Void

Since: base-4.8.0.0

Instance details

Defined in Data.Void

Methods

compare :: Void -> Void -> Ordering Source

(<) :: Void -> Void -> Bool Source

(<=) :: Void -> Void -> Bool Source

(>) :: Void -> Void -> Bool Source

(>=) :: Void -> Void -> Bool Source

max :: Void -> Void -> Void Source

min :: Void -> Void -> Void Source

Ord a => Ord [a]
Instance details

Defined in GHC.Classes

Methods

compare :: [a] -> [a] -> Ordering Source

(<) :: [a] -> [a] -> Bool Source

(<=) :: [a] -> [a] -> Bool Source

(>) :: [a] -> [a] -> Bool Source

(>=) :: [a] -> [a] -> Bool Source

max :: [a] -> [a] -> [a] Source

min :: [a] -> [a] -> [a] Source

Ord a => Ord (Maybe a)

Since: base-2.1

Instance details

Defined in GHC.Maybe

Methods

compare :: Maybe a -> Maybe a -> Ordering Source

(<) :: Maybe a -> Maybe a -> Bool Source

(<=) :: Maybe a -> Maybe a -> Bool Source

(>) :: Maybe a -> Maybe a -> Bool Source

(>=) :: Maybe a -> Maybe a -> Bool Source

max :: Maybe a -> Maybe a -> Maybe a Source

min :: Maybe a -> Maybe a -> Maybe a Source

Integral a => Ord (Ratio a)

Since: base-2.0.1

Instance details

Defined in GHC.Real

Methods

compare :: Ratio a -> Ratio a -> Ordering Source

(<) :: Ratio a -> Ratio a -> Bool Source

(<=) :: Ratio a -> Ratio a -> Bool Source

(>) :: Ratio a -> Ratio a -> Bool Source

(>=) :: Ratio a -> Ratio a -> Bool Source

max :: Ratio a -> Ratio a -> Ratio a Source

min :: Ratio a -> Ratio a -> Ratio a Source

Ord (Ptr a)

Since: base-2.1

Instance details

Defined in GHC.Ptr

Methods

compare :: Ptr a -> Ptr a -> Ordering Source

(<) :: Ptr a -> Ptr a -> Bool Source

(<=) :: Ptr a -> Ptr a -> Bool Source

(>) :: Ptr a -> Ptr a -> Bool Source

(>=) :: Ptr a -> Ptr a -> Bool Source

max :: Ptr a -> Ptr a -> Ptr a Source

min :: Ptr a -> Ptr a -> Ptr a Source

Ord (FunPtr a)
Instance details

Defined in GHC.Ptr

Methods

compare :: FunPtr a -> FunPtr a -> Ordering Source

(<) :: FunPtr a -> FunPtr a -> Bool Source

(<=) :: FunPtr a -> FunPtr a -> Bool Source

(>) :: FunPtr a -> FunPtr a -> Bool Source

(>=) :: FunPtr a -> FunPtr a -> Bool Source

max :: FunPtr a -> FunPtr a -> FunPtr a Source

min :: FunPtr a -> FunPtr a -> FunPtr a Source

Ord p => Ord (Par1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: Par1 p -> Par1 p -> Ordering Source

(<) :: Par1 p -> Par1 p -> Bool Source

(<=) :: Par1 p -> Par1 p -> Bool Source

(>) :: Par1 p -> Par1 p -> Bool Source

(>=) :: Par1 p -> Par1 p -> Bool Source

max :: Par1 p -> Par1 p -> Par1 p Source

min :: Par1 p -> Par1 p -> Par1 p Source

Ord a => Ord (NonEmpty a)

Since: base-4.9.0.0

Instance details

Defined in GHC.Base

Ord a => Ord (Down a)

Since: base-4.6.0.0

Instance details

Defined in Data.Ord

Methods

compare :: Down a -> Down a -> Ordering Source

(<) :: Down a -> Down a -> Bool Source

(<=) :: Down a -> Down a -> Bool Source

(>) :: Down a -> Down a -> Bool Source

(>=) :: Down a -> Down a -> Bool Source

max :: Down a -> Down a -> Down a Source

min :: Down a -> Down a -> Down a Source

Ord a => Ord (Product a)

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

compare :: Product a -> Product a -> Ordering Source

(<) :: Product a -> Product a -> Bool Source

(<=) :: Product a -> Product a -> Bool Source

(>) :: Product a -> Product a -> Bool Source

(>=) :: Product a -> Product a -> Bool Source

max :: Product a -> Product a -> Product a Source

min :: Product a -> Product a -> Product a Source

Ord a => Ord (Sum a)

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

compare :: Sum a -> Sum a -> Ordering Source

(<) :: Sum a -> Sum a -> Bool Source

(<=) :: Sum a -> Sum a -> Bool Source

(>) :: Sum a -> Sum a -> Bool Source

(>=) :: Sum a -> Sum a -> Bool Source

max :: Sum a -> Sum a -> Sum a Source

min :: Sum a -> Sum a -> Sum a Source

Ord a => Ord (Dual a)

Since: base-2.1

Instance details

Defined in Data.Semigroup.Internal

Methods

compare :: Dual a -> Dual a -> Ordering Source

(<) :: Dual a -> Dual a -> Bool Source

(<=) :: Dual a -> Dual a -> Bool Source

(>) :: Dual a -> Dual a -> Bool Source

(>=) :: Dual a -> Dual a -> Bool Source

max :: Dual a -> Dual a -> Dual a Source

min :: Dual a -> Dual a -> Dual a Source

Ord a => Ord (Last a)

Since: base-2.1

Instance details

Defined in Data.Monoid

Methods

compare :: Last a -> Last a -> Ordering Source

(<) :: Last a -> Last a -> Bool Source

(<=) :: Last a -> Last a -> Bool Source

(>) :: Last a -> Last a -> Bool Source

(>=) :: Last a -> Last a -> Bool Source

max :: Last a -> Last a -> Last a Source

min :: Last a -> Last a -> Last a Source

Ord a => Ord (First a)

Since: base-2.1

Instance details

Defined in Data.Monoid

Methods

compare :: First a -> First a -> Ordering Source

(<) :: First a -> First a -> Bool Source

(<=) :: First a -> First a -> Bool Source

(>) :: First a -> First a -> Bool Source

(>=) :: First a -> First a -> Bool Source

max :: First a -> First a -> First a Source

min :: First a -> First a -> First a Source

Ord (ForeignPtr a)

Since: base-2.1

Instance details

Defined in GHC.ForeignPtr

Ord a => Ord (Identity a)

Since: base-4.8.0.0

Instance details

Defined in Data.Functor.Identity

Ord a => Ord (ZipList a)

Since: base-4.7.0.0

Instance details

Defined in Control.Applicative

Methods

compare :: ZipList a -> ZipList a -> Ordering Source

(<) :: ZipList a -> ZipList a -> Bool Source

(<=) :: ZipList a -> ZipList a -> Bool Source

(>) :: ZipList a -> ZipList a -> Bool Source

(>=) :: ZipList a -> ZipList a -> Bool Source

max :: ZipList a -> ZipList a -> ZipList a Source

min :: ZipList a -> ZipList a -> ZipList a Source

Ord a => Ord (Option a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: Option a -> Option a -> Ordering Source

(<) :: Option a -> Option a -> Bool Source

(<=) :: Option a -> Option a -> Bool Source

(>) :: Option a -> Option a -> Bool Source

(>=) :: Option a -> Option a -> Bool Source

max :: Option a -> Option a -> Option a Source

min :: Option a -> Option a -> Option a Source

Ord m => Ord (WrappedMonoid m)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Ord a => Ord (Last a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: Last a -> Last a -> Ordering Source

(<) :: Last a -> Last a -> Bool Source

(<=) :: Last a -> Last a -> Bool Source

(>) :: Last a -> Last a -> Bool Source

(>=) :: Last a -> Last a -> Bool Source

max :: Last a -> Last a -> Last a Source

min :: Last a -> Last a -> Last a Source

Ord a => Ord (First a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: First a -> First a -> Ordering Source

(<) :: First a -> First a -> Bool Source

(<=) :: First a -> First a -> Bool Source

(>) :: First a -> First a -> Bool Source

(>=) :: First a -> First a -> Bool Source

max :: First a -> First a -> First a Source

min :: First a -> First a -> First a Source

Ord a => Ord (Max a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: Max a -> Max a -> Ordering Source

(<) :: Max a -> Max a -> Bool Source

(<=) :: Max a -> Max a -> Bool Source

(>) :: Max a -> Max a -> Bool Source

(>=) :: Max a -> Max a -> Bool Source

max :: Max a -> Max a -> Max a Source

min :: Max a -> Max a -> Max a Source

Ord a => Ord (Min a)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: Min a -> Min a -> Ordering Source

(<) :: Min a -> Min a -> Bool Source

(<=) :: Min a -> Min a -> Bool Source

(>) :: Min a -> Min a -> Bool Source

(>=) :: Min a -> Min a -> Bool Source

max :: Min a -> Min a -> Min a Source

min :: Min a -> Min a -> Min a Source

Ord (Fixed a)

Since: base-2.1

Instance details

Defined in Data.Fixed

Methods

compare :: Fixed a -> Fixed a -> Ordering Source

(<) :: Fixed a -> Fixed a -> Bool Source

(<=) :: Fixed a -> Fixed a -> Bool Source

(>) :: Fixed a -> Fixed a -> Bool Source

(>=) :: Fixed a -> Fixed a -> Bool Source

max :: Fixed a -> Fixed a -> Fixed a Source

min :: Fixed a -> Fixed a -> Fixed a Source

(Ord a, Ord b) => Ord (Either a b)

Since: base-2.1

Instance details

Defined in Data.Either

Methods

compare :: Either a b -> Either a b -> Ordering Source

(<) :: Either a b -> Either a b -> Bool Source

(<=) :: Either a b -> Either a b -> Bool Source

(>) :: Either a b -> Either a b -> Bool Source

(>=) :: Either a b -> Either a b -> Bool Source

max :: Either a b -> Either a b -> Either a b Source

min :: Either a b -> Either a b -> Either a b Source

Ord (V1 p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: V1 p -> V1 p -> Ordering Source

(<) :: V1 p -> V1 p -> Bool Source

(<=) :: V1 p -> V1 p -> Bool Source

(>) :: V1 p -> V1 p -> Bool Source

(>=) :: V1 p -> V1 p -> Bool Source

max :: V1 p -> V1 p -> V1 p Source

min :: V1 p -> V1 p -> V1 p Source

Ord (U1 p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: U1 p -> U1 p -> Ordering Source

(<) :: U1 p -> U1 p -> Bool Source

(<=) :: U1 p -> U1 p -> Bool Source

(>) :: U1 p -> U1 p -> Bool Source

(>=) :: U1 p -> U1 p -> Bool Source

max :: U1 p -> U1 p -> U1 p Source

min :: U1 p -> U1 p -> U1 p Source

Ord (TypeRep a)

Since: base-4.4.0.0

Instance details

Defined in Data.Typeable.Internal

Methods

compare :: TypeRep a -> TypeRep a -> Ordering Source

(<) :: TypeRep a -> TypeRep a -> Bool Source

(<=) :: TypeRep a -> TypeRep a -> Bool Source

(>) :: TypeRep a -> TypeRep a -> Bool Source

(>=) :: TypeRep a -> TypeRep a -> Bool Source

max :: TypeRep a -> TypeRep a -> TypeRep a Source

min :: TypeRep a -> TypeRep a -> TypeRep a Source

(Ord a, Ord b) => Ord (a, b)
Instance details

Defined in GHC.Classes

Methods

compare :: (a, b) -> (a, b) -> Ordering Source

(<) :: (a, b) -> (a, b) -> Bool Source

(<=) :: (a, b) -> (a, b) -> Bool Source

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

(>=) :: (a, b) -> (a, b) -> Bool Source

max :: (a, b) -> (a, b) -> (a, b) Source

min :: (a, b) -> (a, b) -> (a, b) Source

Ord (Proxy s)

Since: base-4.7.0.0

Instance details

Defined in Data.Proxy

Methods

compare :: Proxy s -> Proxy s -> Ordering Source

(<) :: Proxy s -> Proxy s -> Bool Source

(<=) :: Proxy s -> Proxy s -> Bool Source

(>) :: Proxy s -> Proxy s -> Bool Source

(>=) :: Proxy s -> Proxy s -> Bool Source

max :: Proxy s -> Proxy s -> Proxy s Source

min :: Proxy s -> Proxy s -> Proxy s Source

Ord a => Ord (Arg a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: Arg a b -> Arg a b -> Ordering Source

(<) :: Arg a b -> Arg a b -> Bool Source

(<=) :: Arg a b -> Arg a b -> Bool Source

(>) :: Arg a b -> Arg a b -> Bool Source

(>=) :: Arg a b -> Arg a b -> Bool Source

max :: Arg a b -> Arg a b -> Arg a b Source

min :: Arg a b -> Arg a b -> Arg a b Source

Ord (f p) => Ord (Rec1 f p)

Since: base-4.7.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: Rec1 f p -> Rec1 f p -> Ordering Source

(<) :: Rec1 f p -> Rec1 f p -> Bool Source

(<=) :: Rec1 f p -> Rec1 f p -> Bool Source

(>) :: Rec1 f p -> Rec1 f p -> Bool Source

(>=) :: Rec1 f p -> Rec1 f p -> Bool Source

max :: Rec1 f p -> Rec1 f p -> Rec1 f p Source

min :: Rec1 f p -> Rec1 f p -> Rec1 f p Source

Ord (URec Word p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: URec Word p -> URec Word p -> Ordering Source

(<) :: URec Word p -> URec Word p -> Bool Source

(<=) :: URec Word p -> URec Word p -> Bool Source

(>) :: URec Word p -> URec Word p -> Bool Source

(>=) :: URec Word p -> URec Word p -> Bool Source

max :: URec Word p -> URec Word p -> URec Word p Source

min :: URec Word p -> URec Word p -> URec Word p Source

Ord (URec Int p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: URec Int p -> URec Int p -> Ordering Source

(<) :: URec Int p -> URec Int p -> Bool Source

(<=) :: URec Int p -> URec Int p -> Bool Source

(>) :: URec Int p -> URec Int p -> Bool Source

(>=) :: URec Int p -> URec Int p -> Bool Source

max :: URec Int p -> URec Int p -> URec Int p Source

min :: URec Int p -> URec Int p -> URec Int p Source

Ord (URec Float p)
Instance details

Defined in GHC.Generics

Ord (URec Double p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Ord (URec Char p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: URec Char p -> URec Char p -> Ordering Source

(<) :: URec Char p -> URec Char p -> Bool Source

(<=) :: URec Char p -> URec Char p -> Bool Source

(>) :: URec Char p -> URec Char p -> Bool Source

(>=) :: URec Char p -> URec Char p -> Bool Source

max :: URec Char p -> URec Char p -> URec Char p Source

min :: URec Char p -> URec Char p -> URec Char p Source

Ord (URec (Ptr ()) p)

Since: base-4.9.0.0

Instance details

Defined in GHC.Generics

Methods

compare :: URec (Ptr ()) p -> URec (Ptr ()) p -> Ordering Source

(<) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source

(<=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source

(>) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source

(>=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source

max :: URec (Ptr ()) p -> URec (Ptr ()) p -> URec (Ptr ()) p Source

min :: URec (Ptr ()) p -> URec (Ptr ()) p -> URec (Ptr ()) p Source

(Ord a, Ord b, Ord c) => Ord (a, b, c)
Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c) -> (a, b, c) -> Ordering Source

(<) :: (a, b, c) -> (a, b, c) -> Bool Source

(<=) :: (a, b, c) -> (a, b, c) -> Bool Source

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

(>=) :: (a, b, c) -> (a, b, c) -> Bool Source

max :: (a, b, c) -> (a, b, c) -> (a, b, c) Source

min :: (a, b, c) -> (a, b, c) -> (a, b, c) Source

Ord (a :~: b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Equality

Methods

compare :: (a :~: b) -> (a :~: b) -> Ordering Source

(<) :: (a :~: b) -> (a :~: b) -> Bool Source

(<=) :: (a :~: b) -> (a :~: b) -> Bool Source

(>) :: (a :~: b) -> (a :~: b) -> Bool Source

(>=) :: (a :~: b) -> (a :~: b) -> Bool Source

max :: (a :~: b) -> (a :~: b) -> a :~: b Source

min :: (a :~: b) -> (a :~: b) -> a :~: b Source

Ord (Coercion a b)

Since: base-4.7.0.0

Instance details

Defined in Data.Type.Coercion

Methods

compare :: Coercion a b -> Coercion a b -> Ordering Source

(<) :: Coercion a b -> Coercion a b -> Bool Source

(<=) :: Coercion a b -> Coercion a b -> Bool Source

(>) :: Coercion a b -> Coercion a b -> Bool Source

(>=) :: Coercion a b -> Coercion a b -> Bool Source

max :: Coercion a b -> Coercion a b -> Coercion a b Source

min :: Coercion a b -> Coercion a b -> Coercion a b Source

Ord (f a) => Ord (Alt f a)

Since: base-4.8.0.0

Instance details

Defined in Data.Semigroup.Internal

Methods

compare :: Alt f a -> Alt f a -> Ordering Source

(<) :: Alt f a -> Alt f a -> Bool Source

(<=) :: Alt f a -> Alt f a -> Bool Source

(>) :: Alt f a -> Alt f a -> Bool Source

(>=) :: Alt f a -> Alt f a -> Bool Source

max :: Alt f a -> Alt f a -> Alt f a Source

min :: Alt f a -> Alt f a -> Alt f a Source

Ord (f a) => Ord (Ap f a)

Since: base-4.12.0.0

Instance details

Defined in Data.Monoid

Methods

compare :: Ap f a -> Ap f a -> Ordering Source

(<) :: Ap f a -> Ap f a -> Bool Source

(<=) :: Ap f a -> Ap f a -> Bool Source

(>) :: Ap f a -> Ap f a -> Bool Source

(>=) :: Ap f a -> Ap f a -> Bool Source

max :: Ap f a -> Ap f a -> Ap f a Source

min :: Ap f a -> Ap f a -> Ap f a Source

Ord a => Ord (Const a b)

Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Const

Methods

compare :: Const a b -> Const a b -> Ordering Source

(<) :: Const a b -> Const a b -> Bool Source

(<=) :: Const a b -> Const a b -> Bool Source

(>) :: Const a b -> Const a b -> Bool Source

(>=) ::