Pandora.Paradigm.Inventory
Contents
module Pandora.Paradigm.Inventory.Accumulator
module Pandora.Paradigm.Inventory.Environment
module Pandora.Paradigm.Inventory.Equipment
module Pandora.Paradigm.Inventory.Imprint
module Pandora.Paradigm.Inventory.State
module Pandora.Paradigm.Inventory.Store
module Pandora.Paradigm.Inventory.Optics
zoom :: Stateful bg t => Lens bg ls -> State ls ~> t Source #
Methods
(-|) :: a -> (Store s a -> b) -> State s b Source #
(|-) :: Store s a -> (a -> State s b) -> b Source #
phi :: (Store s a -> b) -> a -> State s b Source #
psi :: (a -> State s b) -> Store s a -> b Source #
eta :: a -> (State s :. Store s) := a Source #
epsilon :: ((Store s :. State s) := a) -> a Source #
(-|$) :: Covariant v => v a -> (Store s a -> b) -> v (State s b) Source #
($|-) :: Covariant v => v (Store s a) -> (a -> State s b) -> v b Source #
(-|) :: a -> (Equipment e a -> b) -> Environment e b Source #
(|-) :: Equipment e a -> (a -> Environment e b) -> b Source #
phi :: (Equipment e a -> b) -> a -> Environment e b Source #
psi :: (a -> Environment e b) -> Equipment e a -> b Source #
eta :: a -> (Environment e :. Equipment e) := a Source #
epsilon :: ((Equipment e :. Environment e) := a) -> a Source #
(-|$) :: Covariant v => v a -> (Equipment e a -> b) -> v (Environment e b) Source #
($|-) :: Covariant v => v (Equipment e a) -> (a -> Environment e b) -> v b Source #
(-|) :: a -> (Accumulator e a -> b) -> Imprint e b Source #
(|-) :: Accumulator e a -> (a -> Imprint e b) -> b Source #
phi :: (Accumulator e a -> b) -> a -> Imprint e b Source #
psi :: (a -> Imprint e b) -> Accumulator e a -> b Source #
eta :: a -> (Imprint e :. Accumulator e) := a Source #
epsilon :: ((Accumulator e :. Imprint e) := a) -> a Source #
(-|$) :: Covariant v => v a -> (Accumulator e a -> b) -> v (Imprint e b) Source #
($|-) :: Covariant v => v (Accumulator e a) -> (a -> Imprint e b) -> v b Source #