Safe Haskell | None |
---|---|
Language | GHC2021 |
Halogen.IO.Driver.Eval
Documentation
type Renderer (m :: Type -> Type) (r :: Type -> Type -> Row Type -> Type -> Type) = forall s (f :: Type -> Type) act (ps :: Row Type) i o. IORef (LifecycleHandlers m) -> IORef (DriverState m r s f act ps i o) -> m () Source #
evalF :: forall m (r :: Type -> Type -> Row Type -> Type -> Type) s (f :: Type -> Type) act (ps :: Row Type) i o. (MonadUnliftIO m, MonadParallel m, MonadMask m, MonadFork m, MonadKill m) => Renderer m r -> IORef (DriverState m r s f act ps i o) -> Input act -> m () Source #
evalQ :: forall m (r :: Type -> Type -> Row Type -> Type -> Type) s f act (ps :: Row Type) i o a. (MonadUnliftIO m, MonadParallel m, MonadMask m, MonadFork m, MonadKill m) => Renderer m r -> IORef (DriverState m r s f act ps i o) -> f a -> m (Maybe a) Source #
evalM :: forall m (r :: Type -> Type -> Row Type -> Type -> Type) s (f :: Type -> Type) act (ps :: Row Type) i o a. (MonadUnliftIO m, MonadParallel m, MonadMask m, MonadFork m, MonadKill m) => Renderer m r -> IORef (DriverState m r s f act ps i o) -> HalogenM s act ps o m a -> m a Source #
handleLifecycle :: (MonadIO m, MonadParallel m, MonadFork m) => IORef (LifecycleHandlers m) -> m a -> m a Source #