pandora-0.1.1: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Object.Chain

Synopsis

Documentation

data Ordering Source #

Constructors

Less 
Equal 
Greater 

order :: a -> a -> a -> Ordering -> a Source #

class Setoid a => Chain a where Source #

When providing a new instance, you should ensure it satisfies the three laws:
* Reflexivity: x <= x ≡ True
* Transitivity: x <= y && y <= z ≡ True ===> x <= z ≡ True
* Antisymmetry: x <= y && y <= x ≡ True ===> x == y ≡ True

Minimal complete definition

(<=>)

Methods

(<=>) :: a -> a -> Ordering Source #

(<) :: a -> a -> Boolean Source #

(<=) :: a -> a -> Boolean Source #

(>) :: a -> a -> Boolean Source #

(>=) :: a -> a -> Boolean Source #

Instances
Chain a => Chain (Identity a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Identity

Chain a => Chain (Maybe a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<=>) :: Maybe a -> Maybe a -> Ordering Source #

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

(<=) :: Maybe a -> Maybe a -> Boolean Source #

(>) :: Maybe a -> Maybe a -> Boolean Source #

(>=) :: Maybe a -> Maybe a -> Boolean Source #

(Chain e, Chain a) => Chain (Conclusion e a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Conclusion