Module

Halogen.VDom.Machine

Package
purescript-halogen-vdom
Repository
slamdata/purescript-halogen-vdom

#Machine Source

type Machine m a b = a -> m (Step m a b)

#Step Source

data Step m a b

Constructors

Instances

#extract Source

extract :: forall b a m. Step m a b -> b

Returns the output value of a Step.

#step Source

step :: forall b a m. Step m a b -> a -> m (Step m a b)

Runs the next step.

#halt Source

halt :: forall b a m. Step m a b -> m Unit

Runs the finalizer associated with a Step

#fold Source

fold :: forall s b a m. Applicative m => (s -> a -> m (Tuple s b)) -> (s -> m Unit) -> s -> Machine m a b

#loop Source

loop :: forall s a m. Applicative m => (s -> a -> m s) -> (s -> m Unit) -> s -> Machine m a Unit

#stepper Source

stepper :: forall b a m. Functor m => (a -> m b) -> m Unit -> Machine m a b

#constantly Source

constantly :: forall b a m. Applicative m => b -> Machine m a b

#never Source

never :: forall b m. Applicative m => Machine m Void b