module Pandora.Pattern.Object.Setoid (Setoid (..)) where
import Pandora.Pattern.Category (($))
import Pandora.Paradigm.Primary.Object.Boolean (Boolean (False, True), bool)
infix 4 ==, /=
class Setoid a where
{-# MINIMAL (==) #-}
(==) :: a -> a -> Boolean
(/=) :: a -> a -> Boolean
(/=) a
x a
y = Boolean -> Boolean -> Boolean -> Boolean
forall a. a -> a -> Boolean -> a
bool Boolean
True Boolean
False (Boolean -> Boolean) -> Boolean -> Boolean
forall (m :: * -> * -> *) a b. Category m => m a b -> m a b
$ a
x a -> a -> Boolean
forall a. Setoid a => a -> a -> Boolean
== a
y