pandora-0.4.6: A box of patterns and paradigms
Safe HaskellSafe-Inferred
LanguageHaskell2010

Pandora.Pattern.Object.Setoid

Synopsis

Documentation

class Setoid a where Source #

When providing a new instance, you should ensure it satisfies:
* Reflexivity: x == x ≡ True
* Symmetry: x == y ≡ y == x
* Transitivity: x == y * y == z ≡ True ===> x == z ≡ True
* Negation: x != y ≡ invert (x == y)

Minimal complete definition

(==)

Methods

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

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

Instances

Instances details
Setoid Ordering Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Object

Setoid Boolean Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Object

Setoid Denumerator Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Object.Denumerator

Setoid Numerator Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Object.Numerator

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

Defined in Pandora.Paradigm.Structure.Some.List

Methods

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

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

(Setoid s, Setoid a) => Setoid (s :*: a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Algebraic.Product

Methods

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

(!=) :: (s :*: a) -> (s :*: a) -> 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 (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, forall b. Setoid b => Setoid (t b), Covariant ((->) :: Type -> Type -> Type) ((->) :: Type -> Type -> Type) t, Semimonoidal (<--) (:*:) (:*:) t) => Setoid (Construction t a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Construction

(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 ((t <:.> Construction t) := a) => Setoid (Comprehension t a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Comprehension

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

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

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

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

(Setoid a, Setoid (Vector r a)) => Setoid (Vector (a :*: r) a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Vector

Methods

(==) :: Vector (a :*: r) a -> Vector (a :*: r) a -> Boolean Source #

(!=) :: Vector (a :*: r) a -> Vector (a :*: r) 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 #

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 (Vector i a), Setoid (Vector i (Vector j a))) => Setoid (Matrix i j a) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Linear.Matrix

Methods

(==) :: Matrix i j a -> Matrix i j a -> Boolean Source #

(!=) :: Matrix i j a -> Matrix i j a -> Boolean Source #