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

Pandora.Paradigm.Structure.Ability.Monotonic

Documentation

class Monotonic e a where Source #

Minimal complete definition

reduce

Methods

reduce :: (a -> r -> r) -> r -> e -> r Source #

resolve :: (a -> r) -> r -> e -> r Source #

Version of reduce which ignores accumulator

Instances

Instances details
Monotonic a a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Ability.Monotonic

Methods

reduce :: (a -> r -> r) -> r -> a -> r Source #

resolve :: (a -> r) -> r -> a -> r Source #

Monotonic (Maybe a) a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

reduce :: (a -> r -> r) -> r -> Maybe a -> r Source #

resolve :: (a -> r) -> r -> Maybe a -> r Source #

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

Defined in Pandora.Paradigm.Structure

Methods

reduce :: (s -> r -> r) -> r -> (s :*: a) -> r Source #

resolve :: (s -> r) -> r -> (s :*: a) -> r Source #

Monotonic (Construction Maybe a) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

reduce :: (a -> r -> r) -> r -> Construction Maybe a -> r Source #

resolve :: (a -> r) -> r -> Construction Maybe a -> r Source #

Monotonic (t a) a => Monotonic ((Maybe :. t) := a) a Source # 
Instance details

Defined in Pandora.Paradigm.Primary.Functor.Maybe

Methods

reduce :: (a -> r -> r) -> r -> ((Maybe :. t) := a) -> r Source #

resolve :: (a -> r) -> r -> ((Maybe :. t) := a) -> r Source #

Monotonic ((Maybe <:.> Construction Maybe) := a) a Source # 
Instance details

Defined in Pandora.Paradigm.Structure.Stack

Methods

reduce :: (a -> r -> r) -> r -> ((Maybe <:.> Construction Maybe) := a) -> r Source #

resolve :: (a -> r) -> r -> ((Maybe <:.> Construction Maybe) := a) -> r Source #

find :: (Monotonic e a, Pointable t, Avoidable t) => Predicate a -> e -> t a Source #