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

Pandora.Pattern.Functor.Avoidable

Synopsis

Documentation

class Alternative t => Avoidable t where Source #

When providing a new instance, you should ensure it satisfies:
* Left absorption: x <+> empty ≡ x
* Right absorption: empty <+> x ≡ x

Methods

empty :: t a Source #

Instances

Instances details
Avoidable Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

empty :: Maybe a Source #

Avoidable t => Avoidable (Yoneda t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Yoneda

Methods

empty :: Yoneda t a Source #

Avoidable t => Avoidable (Jack t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Jack

Methods

empty :: Jack t a Source #

Avoidable t => Avoidable (Instruction t) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Transformer.Instruction

Methods

empty :: Instruction t a Source #

(Avoidable t, Alternative t) => Avoidable (Comprehension t) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Modification.Comprehension

Methods

empty :: Comprehension t a Source #

Avoidable (Schematic Monad t u) => Avoidable (t :> u) Source # 
Instance details

Defined in Pandora.Paradigm.Controlflow.Effect.Transformer.Monadic

Methods

empty :: (t :> u) a Source #

(Pointable t, Applicative t, Covariant t', Avoidable u) => Avoidable ((t <:<.>:> t') := u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TUT

Methods

empty :: ((t <:<.>:> t') := u) a Source #

(Covariant u, Avoidable t) => Avoidable (t <:.> u) Source # 
Instance details

Defined in Pandora.Paradigm.Schemes.TU

Methods

empty :: (t <:.> u) a Source #