pandora-0.2.6: A box of patterns and paradigms

Safe HaskellSafe
LanguageHaskell2010

Pandora.Paradigm.Basis.Maybe

Documentation

data Maybe a Source #

Constructors

Nothing 
Just a 
Instances
Interpreted Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Associated Types

type Primary Maybe a :: Type Source #

Methods

run :: Maybe a -> Primary Maybe a Source #

Covariant Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<$>) :: (a -> b) -> Maybe a -> Maybe b Source #

comap :: (a -> b) -> Maybe a -> Maybe b Source #

(<$) :: a -> Maybe b -> Maybe a Source #

($>) :: Maybe a -> b -> Maybe b Source #

void :: Maybe a -> Maybe () Source #

loeb :: Maybe (a <-| Maybe) -> Maybe a Source #

(<&>) :: Maybe a -> (a -> b) -> Maybe b Source #

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

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

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

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

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

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

Covariant Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(<$>) :: (a -> b) -> Stack a -> Stack b Source #

comap :: (a -> b) -> Stack a -> Stack b Source #

(<$) :: a -> Stack b -> Stack a Source #

($>) :: Stack a -> b -> Stack b Source #

void :: Stack a -> Stack () Source #

loeb :: Stack (a <-| Stack) -> Stack a Source #

(<&>) :: Stack a -> (a -> b) -> Stack b Source #

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

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

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

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

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

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

Covariant Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

Methods

(<$>) :: (a -> b) -> Binary a -> Binary b Source #

comap :: (a -> b) -> Binary a -> Binary b Source #

(<$) :: a -> Binary b -> Binary a Source #

($>) :: Binary a -> b -> Binary b Source #

void :: Binary a -> Binary () Source #

loeb :: Binary (a <-| Binary) -> Binary a Source #

(<&>) :: Binary a -> (a -> b) -> Binary b Source #

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

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

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

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

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

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

Bindable Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

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

(=<<) :: (a -> Maybe b) -> Maybe a -> Maybe b Source #

bind :: (a -> Maybe b) -> Maybe a -> Maybe b Source #

join :: ((Maybe :. Maybe) := a) -> Maybe a Source #

(>=>) :: (a -> Maybe b) -> (b -> Maybe c) -> a -> Maybe c Source #

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

Applicative Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b Source #

apply :: Maybe (a -> b) -> Maybe a -> Maybe b Source #

(*>) :: Maybe a -> Maybe b -> Maybe b Source #

(<*) :: Maybe a -> Maybe b -> Maybe a Source #

forever :: Maybe a -> Maybe b Source #

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

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

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

Applicative Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(<*>) :: Stack (a -> b) -> Stack a -> Stack b Source #

apply :: Stack (a -> b) -> Stack a -> Stack b Source #

(*>) :: Stack a -> Stack b -> Stack b Source #

(<*) :: Stack a -> Stack b -> Stack a Source #

forever :: Stack a -> Stack b Source #

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

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

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

Alternative Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<+>) :: Maybe a -> Maybe a -> Maybe a Source #

alter :: Maybe a -> Maybe a -> Maybe a Source #

Alternative Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(<+>) :: Stack a -> Stack a -> Stack a Source #

alter :: Stack a -> Stack a -> Stack a Source #

Avoidable Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

empty :: Maybe a Source #

Avoidable Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

empty :: Stack a Source #

Pointable Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

point :: a |-> Maybe Source #

Pointable Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

point :: a |-> Stack Source #

Pointable Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

Methods

point :: a |-> Binary Source #

Monad Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Traversable Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

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

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

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

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

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

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

Traversable Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

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

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

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

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

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

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

Traversable Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

Methods

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

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

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

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

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

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

Monadic Maybe Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

lay :: Covariant u => u ~> (Maybe :> u) Source #

wrap :: Pointable u => Maybe ~> (Maybe :> u) Source #

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

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(+) :: Maybe a -> Maybe a -> Maybe a Source #

Semigroup (Stack a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

(+) :: Stack a -> Stack a -> Stack a Source #

Semigroup a => Monoid (Maybe a) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

zero :: Maybe a Source #

Monoid (Stack a) Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

zero :: Stack a Source #

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

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(\/) :: Maybe a -> Maybe a -> Maybe a Source #

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

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(/\) :: Maybe a -> Maybe a -> Maybe a Source #

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

Defined in Pandora.Paradigm.Basis.Maybe

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

Defined in Pandora.Paradigm.Basis.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 #

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

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<=>) :: Maybe a -> Maybe a -> Ordering Source #

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

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

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

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

Substructure (Left :: Type -> Wye Type) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

Associated Types

type Output Left Binary a = (r :: Type) Source #

Substructure (Right :: Type -> Wye Type) Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

Associated Types

type Output Right Binary a = (r :: Type) Source #

Covariant u => Covariant (UT Covariant Covariant Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Methods

(<$>) :: (a -> b) -> UT Covariant Covariant Maybe u a -> UT Covariant Covariant Maybe u b Source #

comap :: (a -> b) -> UT Covariant Covariant Maybe u a -> UT Covariant Covariant Maybe u b Source #

(<$) :: a -> UT Covariant Covariant Maybe u b -> UT Covariant Covariant Maybe u a Source #

($>) :: UT Covariant Covariant Maybe u a -> b -> UT Covariant Covariant Maybe u b Source #

void :: UT Covariant Covariant Maybe u a -> UT Covariant Covariant Maybe u () Source #

loeb :: UT Covariant Covariant Maybe u (a <-| UT Covariant Covariant Maybe u) -> UT Covariant Covariant Maybe u a Source #

(<&>) :: UT Covariant Covariant Maybe u a -> (a -> b) -> UT Covariant Covariant Maybe u b Source #

(<$$>) :: Covariant u0 => (a -> b) -> ((UT Covariant Covariant Maybe u :. u0) := a) -> (UT Covariant Covariant Maybe u :. u0) := b Source #

(<$$$>) :: (Covariant u0, Covariant v) => (a -> b) -> ((UT Covariant Covariant Maybe u :. (u0 :. v)) := a) -> (UT Covariant Covariant Maybe u :. (u0 :. v)) := b Source #

(<$$$$>) :: (Covariant u0, Covariant v, Covariant w) => (a -> b) -> ((UT Covariant Covariant Maybe u :. (u0 :. (v :. w))) := a) -> (UT Covariant Covariant Maybe u :. (u0 :. (v :. w))) := b Source #

(<&&>) :: Covariant u0 => ((UT Covariant Covariant Maybe u :. u0) := a) -> (a -> b) -> (UT Covariant Covariant Maybe u :. u0) := b Source #

(<&&&>) :: (Covariant u0, Covariant v) => ((UT Covariant Covariant Maybe u :. (u0 :. v)) := a) -> (a -> b) -> (UT Covariant Covariant Maybe u :. (u0 :. v)) := b Source #

(<&&&&>) :: (Covariant u0, Covariant v, Covariant w) => ((UT Covariant Covariant Maybe u :. (u0 :. (v :. w))) := a) -> (a -> b) -> (UT Covariant Covariant Maybe u :. (u0 :. (v :. w))) := b Source #

(Pointable u, Bindable u) => Bindable (UT Covariant Covariant Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Applicative u => Applicative (UT Covariant Covariant Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Pointable u => Pointable (UT Covariant Covariant Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

Monad u => Monad (UT Covariant Covariant Maybe u) Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

type Nonempty Stack Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

type Nonempty Binary Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

type Primary Maybe a Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

type Primary Maybe a = Maybe a
type Schematic Monad Maybe u Source # 
Instance details

Defined in Pandora.Paradigm.Basis.Maybe

type Output (Left :: Type -> Wye Type) Binary a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

type Output (Left :: Type -> Wye Type) Binary a = (Left :: (Any :: Type) -> Wye (Any :: Type)) :# Binary a
type Output (Right :: Type -> Wye Type) Binary a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Binary

type Output (Right :: Type -> Wye Type) Binary a = (Right :: (Any :: Type) -> Wye (Any :: Type)) :# Binary a

maybe :: b -> (a -> b) -> Maybe a -> b Source #

nothing :: Optional t => t a Source #