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

Pandora.Paradigm.Primary.Functor.Conclusion

Documentation

data Conclusion e a Source #

Constructors

Failure e 
Success a 

Instances

Instances details
Bivariant Conclusion Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

(<->) :: (forall i. Covariant (Conclusion i)) => (a -> b) -> (c -> d) -> Conclusion a c -> Conclusion b d Source #

bimap :: (forall i. Covariant (Conclusion i)) => (a -> b) -> (c -> d) -> Conclusion a c -> Conclusion b d Source #

Covariant (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

(<$>) :: (a -> b) -> Conclusion e a -> Conclusion e b Source #

comap :: (a -> b) -> Conclusion e a -> Conclusion e b Source #

(<$) :: a -> Conclusion e b -> Conclusion e a Source #

($>) :: Conclusion e a -> b -> Conclusion e b Source #

void :: Conclusion e a -> Conclusion e () Source #

loeb :: Conclusion e (a <:= Conclusion e) -> Conclusion e a Source #

(<&>) :: Conclusion e a -> (a -> b) -> Conclusion e b Source #

(<$$>) :: Covariant u => (a -> b) -> ((Conclusion e :. u) := a) -> (Conclusion e :. u) := b Source #

(<$$$>) :: (Covariant u, Covariant v) => (a -> b) -> ((Conclusion e :. (u :. v)) := a) -> (Conclusion e :. (u :. v)) := b Source #

(<$$$$>) :: (Covariant u, Covariant v, Covariant w) => (a -> b) -> ((Conclusion e :. (u :. (v :. w))) := a) -> (Conclusion e :. (u :. (v :. w))) := b Source #

(<&&>) :: Covariant u => ((Conclusion e :. u) := a) -> (a -> b) -> (Conclusion e :. u) := b Source #

(<&&&>) :: (Covariant u, Covariant v) => ((Conclusion e :. (u :. v)) := a) -> (a -> b) -> (Conclusion e :. (u :. v)) := b Source #

(<&&&&>) :: (Covariant u, Covariant v, Covariant w) => ((Conclusion e :. (u :. (v :. w))) := a) -> (a -> b) -> (Conclusion e :. (u :. (v :. w))) := b Source #

(.#..) :: (Conclusion e ~ v a, Category v) => v c d -> ((v a :. v b) := c) -> (v a :. v b) := d Source #

(.#...) :: (Conclusion e ~ v a, Conclusion e ~ v b, Category v, Covariant (v a), Covariant (v b)) => v d e0 -> ((v a :. (v b :. v c)) := d) -> (v a :. (v b :. v c)) := e0 Source #

(.#....) :: (Conclusion e ~ v a, Conclusion e ~ v b, Conclusion e ~ v c, Category v, Covariant (v a), Covariant (v b), Covariant (v c)) => v e0 f -> ((v a :. (v b :. (v c :. v d))) := e0) -> (v a :. (v b :. (v c :. v d))) := f Source #

(<$$) :: Covariant u => b -> ((Conclusion e :. u) := a) -> (Conclusion e :. u) := b Source #

(<$$$) :: (Covariant u, Covariant v) => b -> ((Conclusion e :. (u :. v)) := a) -> (Conclusion e :. (u :. v)) := b Source #

(<$$$$) :: (Covariant u, Covariant v, Covariant w) => b -> ((Conclusion e :. (u :. (v :. w))) := a) -> (Conclusion e :. (u :. (v :. w))) := b Source #

($$>) :: Covariant u => ((Conclusion e :. u) := a) -> b -> (Conclusion e :. u) := b Source #

($$$>) :: (Covariant u, Covariant v) => ((Conclusion e :. (u :. v)) := a) -> b -> (Conclusion e :. (u :. v)) := b Source #

($$$$>) :: (Covariant u, Covariant v, Covariant w) => ((Conclusion e :. (u :. (v :. w))) := a) -> b -> (Conclusion e :. (u :. (v :. w))) := b Source #

Bindable (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

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

(=<<) :: (a -> Conclusion e b) -> Conclusion e a -> Conclusion e b Source #

bind :: (a -> Conclusion e b) -> Conclusion e a -> Conclusion e b Source #

join :: ((Conclusion e :. Conclusion e) := a) -> Conclusion e a Source #

(>=>) :: (a -> Conclusion e b) -> (b -> Conclusion e c) -> a -> Conclusion e c Source #

(<=<) :: (b -> Conclusion e c) -> (a -> Conclusion e b) -> a -> Conclusion e c Source #

($>>=) :: Covariant u => ((u :. Conclusion e) := a) -> (a -> Conclusion e b) -> (u :. Conclusion e) := b Source #

Applicative (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

(<*>) :: Conclusion e (a -> b) -> Conclusion e a -> Conclusion e b Source #

apply :: Conclusion e (a -> b) -> Conclusion e a -> Conclusion e b Source #

(*>) :: Conclusion e a -> Conclusion e b -> Conclusion e b Source #

(<*) :: Conclusion e a -> Conclusion e b -> Conclusion e a Source #

forever :: Conclusion e a -> Conclusion e b Source #

(<%>) :: Conclusion e a -> Conclusion e (a -> b) -> Conclusion e b Source #

(<**>) :: Applicative u => ((Conclusion e :. u) := (a -> b)) -> ((Conclusion e :. u) := a) -> (Conclusion e :. u) := b Source #

(<***>) :: (Applicative u, Applicative v) => ((Conclusion e :. (u :. v)) := (a -> b)) -> ((Conclusion e :. (u :. v)) := a) -> (Conclusion e :. (u :. v)) := b Source #

(<****>) :: (Applicative u, Applicative v, Applicative w) => ((Conclusion e :. (u :. (v :. w))) := (a -> b)) -> ((Conclusion e :. (u :. (v :. w))) := a) -> (Conclusion e :. (u :. (v :. w))) := b Source #

Alternative (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

(<+>) :: Conclusion e a -> Conclusion e a -> Conclusion e a Source #

alter :: Conclusion e a -> Conclusion e a -> Conclusion e a Source #

Pointable (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Monad (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Traversable (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

(->>) :: (Pointable u, Applicative u) => Conclusion e a -> (a -> u b) -> (u :. Conclusion e) := b Source #

traverse :: (Pointable u, Applicative u) => (a -> u b) -> Conclusion e a -> (u :. Conclusion e) := b Source #

sequence :: (Pointable u, Applicative u) => ((Conclusion e :. u) := a) -> (u :. Conclusion e) := a Source #

(->>>) :: (Pointable u, Applicative u, Traversable v) => ((v :. Conclusion e) := a) -> (a -> u b) -> (u :. (v :. Conclusion e)) := b Source #

(->>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w) => ((w :. (v :. Conclusion e)) := a) -> (a -> u b) -> (u :. (w :. (v :. Conclusion e))) := b Source #

(->>>>>) :: (Pointable u, Applicative u, Traversable v, Traversable w, Traversable j) => ((j :. (w :. (v :. Conclusion e))) := a) -> (a -> u b) -> (u :. (j :. (w :. (v :. Conclusion e)))) := b Source #

Interpreted (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Associated Types

type Primary (Conclusion e) a Source #

Methods

run :: Conclusion e a -> Primary (Conclusion e) a Source #

unite :: Primary (Conclusion e) a -> Conclusion e a Source #

(||=) :: Interpreted u => (Primary (Conclusion e) a -> Primary u b) -> Conclusion e a -> u b Source #

(=||) :: Interpreted u => (Conclusion e a -> u b) -> Primary (Conclusion e) a -> Primary u b Source #

(<$||=) :: (Covariant j, Interpreted u) => (Primary (Conclusion e) a -> Primary u b) -> (j := Conclusion e a) -> j := u b Source #

(<$$||=) :: (Covariant j, Covariant k, Interpreted u) => (Primary (Conclusion e) a -> Primary u b) -> ((j :. k) := Conclusion e a) -> (j :. k) := u b Source #

(<$$$||=) :: (Covariant j, Covariant k, Covariant l, Interpreted u) => (Primary (Conclusion e) a -> Primary u b) -> ((j :. (k :. l)) := Conclusion e a) -> (j :. (k :. l)) := u b Source #

(<$$$$||=) :: (Covariant j, Covariant k, Covariant l, Covariant m, Interpreted u) => (Primary (Conclusion e) a -> Primary u b) -> ((j :. (k :. (l :. m))) := Conclusion e a) -> (j :. (k :. (l :. m))) := u b Source #

(=||$>) :: (Covariant j, Interpreted u) => (Conclusion e a -> u b) -> (j := Primary (Conclusion e) a) -> j := Primary u b Source #

(=||$$>) :: (Covariant j, Covariant k, Interpreted u) => (Conclusion e a -> u b) -> ((j :. k) := Primary (Conclusion e) a) -> (j :. k) := Primary u b Source #

(=||$$$>) :: (Covariant j, Covariant k, Covariant l, Interpreted u) => (Conclusion e a -> u b) -> ((j :. (k :. l)) := Primary (Conclusion e) a) -> (j :. (k :. l)) := Primary u b Source #

(=||$$$$>) :: (Covariant j, Covariant k, Covariant l, Covariant m, Interpreted u) => (Conclusion e a -> u b) -> ((j :. (k :. (l :. m))) := Primary (Conclusion e) a) -> (j :. (k :. (l :. m))) := Primary u b Source #

Monadic (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

wrap :: forall (u :: Type -> Type). Pointable u => Conclusion e ~> (Conclusion e :> u) Source #

Catchable e (Conclusion e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

catch :: forall (a :: k). Conclusion e a -> (e -> Conclusion e a) -> Conclusion e a Source #

Monad u => Catchable e (Conclusion e <.:> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

catch :: forall (a :: k). (Conclusion e <.:> u) a -> (e -> (Conclusion e <.:> u) a) -> (Conclusion e <.:> u) a Source #

Morphable ('Into (Flip Conclusion e) :: Morph (Type -> Type)) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into (Flip Conclusion e)) Maybe :: Type -> Type Source #

Morphable ('Into (Conclusion e) :: Morph (Type -> Type)) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into (Conclusion e)) Maybe :: Type -> Type Source #

Morphable ('Into Maybe) (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

Associated Types

type Morphing ('Into Maybe) (Conclusion e) :: Type -> Type Source #

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

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

(+) :: Conclusion e a -> Conclusion e a -> Conclusion e a 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 #

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

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

type Schematic Monad (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

type Primary (Conclusion e) a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

type Primary (Conclusion e) a = Conclusion e a
type Morphing ('Into (Flip Conclusion e) :: Morph (Type -> Type)) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Morphing ('Into (Flip Conclusion e) :: Morph (Type -> Type)) Maybe = ((->) e :: Type -> Type) <:.> Flip Conclusion e
type Morphing ('Into (Conclusion e) :: Morph (Type -> Type)) Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Primary

type Morphing ('Into (Conclusion e) :: Morph (Type -> Type)) Maybe = ((->) e :: Type -> Type) <:.> Conclusion e
type Morphing ('Into Maybe) (Conclusion e) Source # 
Instance details

Defined in Pandora.Paradigm.Primary

conclusion :: (e -> r) -> (a -> r) -> Conclusion e a -> r Source #

fail :: (e -> r) -> Conclusion e ~> Conclusion r Source #

failure :: Failable e t => e -> t a Source #

class Catchable e t where Source #

Methods

catch :: t a -> (e -> t a) -> t a Source #

Instances

Instances details
Catchable e (Conclusion e :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

catch :: forall (a :: k). Conclusion e a -> (e -> Conclusion e a) -> Conclusion e a Source #

Monad u => Catchable e (Conclusion e <.:> u :: Type -> Type) Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Conclusion

Methods

catch :: forall (a :: k). (Conclusion e <.:> u) a -> (e -> (Conclusion e <.:> u) a) -> (Conclusion e <.:> u) a Source #