Module
Halogen.Aff.Driver.State
- Package
- purescript-halogen
- Repository
- slamdata/purescript-halogen
#LifecycleHandlers Source
type LifecycleHandlers eff = { finalizers :: List (Aff (HalogenEffects eff) Unit), initializers :: List (Aff (HalogenEffects eff) Unit) }
#DriverState Source
newtype DriverState h r s f z g p i o eff
The type used to track a driver's persistent state.
h
is the type of value the components produce for rendering.r
is the type for the render state for the driver.s
is the component state type.f
is the projected component query algebra - used for multi-child-type components, by projecting toz
we can avoid the need to remap the entire component.z
is the unprojected component query algebra.g
is the component child query algebra.p
is the type of slots for the component.i
is the invput value type.o
is the type of output messages from the component.eff
is the effect row for the targetAff
Constructors
DriverState (DriverStateRec h r s f z g p i o eff)
#DriverStateRec Source
type DriverStateRec h r s f z g p i o eff = { children :: Map (OrdBox p) (Ref (DriverStateX h r g eff)), childrenIn :: Ref (Map (OrdBox p) (Ref (DriverStateX h r g eff))), childrenOut :: Ref (Map (OrdBox p) (Ref (DriverStateX h r g eff))), component :: Component' h s z g p i o (Aff (HalogenEffects eff)), fresh :: Ref Int, handler :: o -> Aff (HalogenEffects eff) Unit, lifecycleHandlers :: Ref (LifecycleHandlers eff), pendingHandlers :: Ref (Maybe (List (Aff (HalogenEffects eff) Unit))), pendingOuts :: Ref (Maybe (List (Aff (HalogenEffects eff) Unit))), pendingQueries :: Ref (Maybe (List (Aff (HalogenEffects eff) Unit))), prjQuery :: forall x. f x -> Maybe (z x), refs :: StrMap Foreign, rendering :: Maybe (r s z g p o eff), selfRef :: Ref (DriverState h r s f z g p i o eff), state :: s, subscriptions :: Ref (Maybe (Map Int (Aff (HalogenEffects eff) Unit))) }
#unDriverStateX Source
unDriverStateX :: forall x eff f r h. (forall o i p g z s. DriverStateRec h r s f z g p i o eff -> x) -> DriverStateX h r f eff -> x
#mkDriverStateXRef Source
mkDriverStateXRef :: forall eff o i p g z f s r h. Ref (DriverState h r s f z g p i o eff) -> Ref (DriverStateX h r f eff)
#renderStateX Source
renderStateX :: forall eff f r h m. Functor m => (forall o p g s z. Maybe (r s z g p o eff) -> m (r s z g p o eff)) -> DriverStateX h r f eff -> m (RenderStateX r eff)
#renderStateX_ Source
renderStateX_ :: forall eff f r h m. Applicative m => (forall o p g s z. r s z g p o eff -> m Unit) -> DriverStateX h r f eff -> m Unit
#unRenderStateX Source
unRenderStateX :: forall x eff r. (forall o p g s z. r s z g p o eff -> x) -> RenderStateX r eff -> x
#initDriverState Source
initDriverState :: forall eff o i p g z f s r h. Component' h s z g p i o (Aff (HalogenEffects eff)) -> i -> (o -> Aff (HalogenEffects eff) Unit) -> (forall x. f x -> Maybe (z x)) -> Ref (LifecycleHandlers eff) -> Eff (HalogenEffects eff) (Ref (DriverStateX h r f eff))
- Modules
- Halogen
- Halogen.
Aff - Halogen.
Aff. Driver - Halogen.
Aff. Driver. Eval - Halogen.
Aff. Driver. State - Halogen.
Aff. Effects - Halogen.
Aff. Util - Halogen.
Component - Halogen.
Component. ChildPath - Halogen.
Component. Profunctor - Halogen.
Data. OrdBox - Halogen.
Data. Prism - Halogen.
HTML - Halogen.
HTML. Core - Halogen.
HTML. Elements - Halogen.
HTML. Elements. Keyed - Halogen.
HTML. Events - Halogen.
HTML. Properties - Halogen.
HTML. Properties. ARIA - Halogen.
Query - Halogen.
Query. EventSource - Halogen.
Query. ForkF - Halogen.
Query. HalogenM - Halogen.
Query. InputF - Halogen.
VDom. Driver