pandora-0.2.0: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Object.Setoid

Synopsis

Documentation

data Boolean Source #

Constructors

True 
False 

(&&) :: Boolean -> Boolean -> Boolean infixr 3 Source #

(||) :: Boolean -> Boolean -> Boolean infixr 9 Source #

bool :: a -> a -> Boolean -> a Source #

ifelse :: a -> a -> Boolean -> a Source #

class Setoid a where Source #

When providing a new instance, you should ensure it satisfies the four laws:
* Reflexivity: x == x ≡ True
* Symmetry: x == y ≡ y == x
* Transitivity: x == y && y == z ≡ True ===> x == z ≡ True
* Negation: x /= y ≡ not (x == y)

Minimal complete definition

(==)

Methods

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

(/=) :: a -> a -> Boolean infix 4 Source #

Instances
Setoid a => Setoid (Maybe a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

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

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

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

Defined in Pandora.Paradigm.Basis.Identity

(Setoid a, forall b. Setoid b => Setoid (t b)) => Setoid (Twister t a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Twister

Methods

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

(/=) :: Twister t a -> Twister t a -> Boolean Source #

(Setoid a, Setoid b) => Setoid (Product a b) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Product

Methods

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

(/=) :: Product a b -> Product a b -> Boolean Source #

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

Defined in Pandora.Paradigm.Basis.Jack

Methods

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

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

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

Defined in Pandora.Paradigm.Basis.Conclusion

Methods

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

(/=) :: Conclusion e a -> Conclusion e a -> Boolean Source #

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

Defined in Pandora.Paradigm.Basis.Tagged

Methods

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

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

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

Defined in Pandora.Paradigm.Basis.Constant

Methods

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

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