pandora-0.2.8: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Pattern.Object.Setoid

Synopsis

Documentation

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 (Identity a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Identity

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

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

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

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

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

Defined in Pandora.Paradigm.Structure.Stack

Methods

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.Validation

Methods

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

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

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

Defined in Pandora.Paradigm.Primary.Functor.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.Primary.Transformer.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.Primary.Functor.Conclusion

Methods

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

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

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

Defined in Pandora.Paradigm.Primary.Transformer.Construction

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

Defined in Pandora.Paradigm.Primary.Functor.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.Primary.Functor.Constant

Methods

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

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