pandora-0.3.0: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Object.Chain

Synopsis

Documentation

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 Ordering Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Object

Chain Boolean Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Object

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

Defined in Pandora.Paradigm.Primary.Functor.Identity

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

Defined in Pandora.Paradigm.Primary.Functor.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 (Validation e a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Validation

(Chain a, Chain (t a)) => Chain (Jack t a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Jack

Methods

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

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

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

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Chain a => Chain (Tagged tag a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Tagged

Methods

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

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

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

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

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

Chain a => Chain (Constant a b) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Constant

Methods

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

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

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

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

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