Module

Halogen.Data.Slot

Package
purescript-halogen
Repository
purescript-halogen/purescript-halogen

#Slot Source

data Slot (query :: Type -> Type) output slot

#SlotStorage Source

newtype SlotStorage (slots :: Row Type) (slot :: (Type -> Type) -> Type -> Type)

#empty Source

empty :: forall slots slot. SlotStorage slots slot

#lookup Source

lookup :: forall sym px slots slot query output s. Cons sym (Slot query output s) px slots => IsSymbol sym => Ord s => Proxy sym -> s -> SlotStorage slots slot -> Maybe (slot query output)

#insert Source

insert :: forall sym px slots slot query output s. Cons sym (Slot query output s) px slots => IsSymbol sym => Ord s => Proxy sym -> s -> slot query output -> SlotStorage slots slot -> SlotStorage slots slot

#pop Source

pop :: forall sym px slots slot query output s. Cons sym (Slot query output s) px slots => IsSymbol sym => Ord s => Proxy sym -> s -> SlotStorage slots slot -> Maybe (Tuple (slot query output) (SlotStorage slots slot))

#slots Source

slots :: forall sym px slots slot query output s. Cons sym (Slot query output s) px slots => IsSymbol sym => Ord s => Proxy sym -> SlotStorage slots slot -> Map s (slot query output)

#foreachSlot Source

foreachSlot :: forall m slots slot. Applicative m => SlotStorage slots slot -> (forall query output. slot query output -> m Unit) -> m Unit