ordering-duplicates-0.0.2: Functions for detecting duplicates
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Ord.Ordering

Documentation

newtype Order b a Source #

Constructors

Order (a -> a -> b) 

Instances

Instances details
Contravariant (Order b) Source # 
Instance details

Defined in Data.Ord.Ordering

Methods

contramap :: (a' -> a) -> Order b a -> Order b a' #

(>$) :: b0 -> Order b b0 -> Order b a #

Monoid b => Decidable (Order b) Source # 
Instance details

Defined in Data.Ord.Ordering

Methods

lose :: (a -> Void) -> Order b a #

choose :: (a -> Either b0 c) -> Order b b0 -> Order b c -> Order b a #

Monoid b => Divisible (Order b) Source # 
Instance details

Defined in Data.Ord.Ordering

Methods

divide :: (a -> (b0, c)) -> Order b b0 -> Order b c -> Order b a #

conquer :: Order b a #

Monoid b => Monoid (Order b a) Source # 
Instance details

Defined in Data.Ord.Ordering

Methods

mempty :: Order b a #

mappend :: Order b a -> Order b a -> Order b a #

mconcat :: [Order b a] -> Order b a #

Semigroup b => Semigroup (Order b a) Source # 
Instance details

Defined in Data.Ord.Ordering

Methods

(<>) :: Order b a -> Order b a -> Order b a #

sconcat :: NonEmpty (Order b a) -> Order b a #

stimes :: Integral b0 => b0 -> Order b a -> Order b a #

order :: Iso (Order b a) (Order b' a') (a -> a -> b) (a' -> a' -> b') Source #

lt :: IsOrdering b => Order b a Source #

isLT :: IsOrdering b => Order b a -> a -> a -> Bool Source #

ifLT :: IsOrdering x => a -> a -> x -> a Source #

eq :: IsOrdering b => Order b a Source #

isEQ :: IsOrdering b => Order b a -> a -> a -> Bool Source #

ifEQ :: IsOrdering x => a -> a -> x -> a Source #

gt :: IsOrdering b => Order b a Source #

isGT :: IsOrdering b => Order b a -> a -> a -> Bool Source #

ifGT :: IsOrdering x => a -> a -> x -> a Source #

isKnownEq :: IsOrderingKnownEq b => Order b a -> a -> a -> Bool Source #

ifKnownEq :: IsOrderingKnownEq x => a -> a -> x -> a Source #

ordOrder :: (Ord a, IsOrdering b) => Order b a Source #

mapOrdering :: (b -> b') -> Order b a -> Order b' a Source #

(*>>) :: Applicative f => Order (f a1) a2 -> Order (f b) a2 -> Order (f b) a2 infixr 6 Source #

listOrder :: (IsOrdering b, Semigroup b) => Order b a -> Order b [a] Source #

orderL :: Contravariant f => Getting a s a -> f a -> f s Source #

orderL' :: (Ord a, IsOrdering b) => Getting a s a -> Order b s Source #

orderS :: Contravariant f => StateT a Identity b -> f b -> f a Source #

orderS' :: (Ord x, IsOrdering b) => StateT a Identity x -> Order b a Source #

duplicates :: KnownEqOrd OrderingKnownEq a => (t -> a) -> [t] -> [(t, t)] Source #

class Ord a => KnownEqOrd b a where Source #

areEqual :: (Eq a, IsOrdering b) => a -> a -> Order b a -> Order b a Source #

(.===.) :: (Ord a, IsOrdering b) => a -> a -> Order b a Source #