React.Halo.Internal.Control
- Package
- purescript-react-halo
- Repository
- robertdp/purescript-react-halo
#HaloF Source
data HaloF props state action m aThe Halo evaluation algebra
propsare the component propsstateis the component stateactionis the set of actions that the component handlesmis the monad used during evaluationais the result type
Constructors
Props (props -> a)State (state -> Tuple a state)Subscribe (SubscriptionId -> Event action) (SubscriptionId -> a)Unsubscribe SubscriptionId aLift (m a)Par (HaloAp props state action m a)Fork (HaloM props state action m Unit) (ForkId -> a)Kill ForkId a
Instances
#HaloM Source
newtype HaloM props state action m aThe Halo evaluation monad. It lifts the HaloF algebra into a free monad.
propsare the component propsstateis the component stateactionis the set of actions that the component handlesmis the monad used during evaluationais the result type
Constructors
Instances
Functor (HaloM props state action m)Apply (HaloM props state action m)Applicative (HaloM props state action m)Bind (HaloM props state action m)Monad (HaloM props state action m)(Semigroup a) => Semigroup (HaloM props state action m a)(Monoid a) => Monoid (HaloM props state action m a)MonadTrans (HaloM props state action)(MonadEffect m) => MonadEffect (HaloM props state action m)(MonadAff m) => MonadAff (HaloM props state action m)MonadState state (HaloM props state action m)MonadRec (HaloM props state action m)(MonadAsk r m) => MonadAsk r (HaloM props state action m)(MonadTell w m) => MonadTell w (HaloM props state action m)(MonadThrow e m) => MonadThrow e (HaloM props state action m)Parallel (HaloAp props state action m) (HaloM props state action m)
#HaloAp Source
newtype HaloAp props state action m aThe Halo parallel evaluation applicative. It lifts HaloM into a free applicative.
propsare the component propsstateis the component stateactionis the set of actions that the component handlesmis the monad used during evaluationais the result type
Constructors
Instances
#subscribe Source
subscribe :: forall m action state props. Event action -> HaloM props state action m SubscriptionIdSubscribe to new actions from an Event. Subscriptions will be automatically cancelled when the component
unmounts.
Returns a SubscriptionId which can be used with unsubscribe to manually cancel a subscription.
#subscribe' Source
subscribe' :: forall props state action m. (SubscriptionId -> Event action) -> HaloM props state action m SubscriptionIdSame as subscribe but the event-producing logic is also passed the SuscriptionId. This is useful when events
need to unsubscribe themselves.
#unsubscribe Source
unsubscribe :: forall props state action m. SubscriptionId -> HaloM props state action m UnitCancels the event subscription belonging to the SubscriptionId.
#fork Source
fork :: forall props state action m. HaloM props state action m Unit -> HaloM props state action m ForkIdStart a HaloM process running independantly from the current "thread". Forks are tracked automatically and
killed when the Finalize event occurs (when the component unmounts). New forks can still be created during the
Finalize event, but once evaluation ends there will be no way of killing them.
Returns a ForkId for the new process.