concoct-0.1.0: A declarative UI framework
Copyright(c) Matt Hunzinger 2026
LicenseBSD-style (see the LICENSE file in the distribution)
Maintainermatt@hunzinger.me
Stabilityprovisional
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Concoct.View.Build

Description

 

Documentation

newtype Build (m :: Type -> Type) a Source #

Constructors

Build 

Fields

Instances

Instances details
MonadIO m => MonadView m (Build m) Source # 
Instance details

Defined in Concoct.View.Build

Methods

useState :: Typeable a => m a -> Build m (StateRef a) Source #

useRef :: Typeable a => m a -> Build m (ViewRef a) Source #

useEffect :: (Eq d, Typeable d) => m d -> (d -> m ()) -> Build m () Source #

useOnUnmount :: m () -> Build m () Source #

component :: (forall (x :: Type -> Type). MonadView m x => x ()) -> Build m () Source #

liftView :: m () -> Build m () Source #

switchView :: m Bool -> (forall (x :: Type -> Type). MonadView m x => x ()) -> (forall (x :: Type -> Type). MonadView m x => x ()) -> Build m () Source #

listView :: (Typeable a, Eq a) => m [a] -> (a -> forall (x :: Type -> Type). MonadView m x => x ()) -> Build m () Source #

Monad m => Applicative (Build m) Source # 
Instance details

Defined in Concoct.View.Build

Methods

pure :: a -> Build m a #

(<*>) :: Build m (a -> b) -> Build m a -> Build m b #

liftA2 :: (a -> b -> c) -> Build m a -> Build m b -> Build m c #

(*>) :: Build m a -> Build m b -> Build m b #

(<*) :: Build m a -> Build m b -> Build m a #

Functor m => Functor (Build m) Source # 
Instance details

Defined in Concoct.View.Build

Methods

fmap :: (a -> b) -> Build m a -> Build m b #

(<$) :: a -> Build m b -> Build m a #

Monad m => Monad (Build m) Source # 
Instance details

Defined in Concoct.View.Build

Methods

(>>=) :: Build m a -> (a -> Build m b) -> Build m b #

(>>) :: Build m a -> Build m b -> Build m b #

return :: a -> Build m a #

runBuild :: MonadIO m => Build m a -> ViewState -> m (a, ViewState) Source #