Copyright | (c) 2016 Moritz Schulte |
---|---|
License | BSD3 |
Maintainer | mtesseract@silverratio.net |
Stability | experimental |
Portability | POSIX |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
This module provides the
PartialOrd
typeclass suitable for types
admitting a partial order.
Along with the
PartialOrd
typeclass and some utility functions for
working with partially ordered types, it exports implementations for
the numeric types several numeric types, lists and sets.
Synopsis
- class PartialOrd a where
- maxima :: PartialOrd a => [a] -> [a]
- minima :: PartialOrd a => [a] -> [a]
- elem :: ( PartialOrd a, Foldable t) => a -> t a -> Bool
- notElem :: ( PartialOrd a, Foldable t) => a -> t a -> Bool
- nub :: PartialOrd a => [a] -> [a]
Documentation
class PartialOrd a where Source #
(<=) :: a -> a -> Bool Source #
Less-than-or-equal relation.
(>=) :: a -> a -> Bool Source #
Bigger-than-or-equal relation. Defined in terms of
<=
.
(==) :: a -> a -> Bool Source #
Equality relation. Defined in terms of
<=
.
(/=) :: a -> a -> Bool Source #
Inequality relation. Defined in terms of
==
.
(<) :: a -> a -> Bool Source #
Instances
PartialOrd Double Source # | |
PartialOrd Float Source # | |
Defined in Data.PartialOrd |
|
PartialOrd Int Source # |
Derive the partial order from the total order for the following types: |
PartialOrd Integer Source # | |
PartialOrd a => PartialOrd [a] Source # |
Define the partial order in terms of the sublist relation. |
Ord a => PartialOrd ( Set a) Source # |
Define the partial order in terms of the subset relation. |
Defined in Data.PartialOrd |
maxima :: PartialOrd a => [a] -> [a] Source #
Compute the list of all elements that are not less than any other element in the list.
minima :: PartialOrd a => [a] -> [a] Source #
Compute the list of all elements that are not bigger than any other element in the list.
elem :: ( PartialOrd a, Foldable t) => a -> t a -> Bool Source #
Version of the traditional elem function using the PartialOrd notion of equality.
notElem :: ( PartialOrd a, Foldable t) => a -> t a -> Bool Source #
Version of the traditional notElem function using the PartialOrd notion of equality.
nub :: PartialOrd a => [a] -> [a] Source #
Version of the traditional nub function using the PartialOrd notion of equality.