Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data Element = Element {}
- data RepF r a = Rep {}
- type Rep a = RepF (Html ()) a
- oneRep :: (Monad m, MonadIO m) => Rep a -> (Rep a -> HashMap Text Text -> m ()) -> StateT (HashMap Text Text) m (HashMap Text Text, Either Text a)
- newtype SharedRepF m r a = SharedRep {}
- type SharedRep m a = SharedRepF m (Html ()) a
- runOnce :: Monad m => SharedRep m a -> (Html () -> HashMap Text Text -> m ()) -> m (HashMap Text Text, Either Text a)
- zeroState :: Monad m => SharedRep m a -> m (Html (), (HashMap Text Text, Either Text a))
- listify :: Monad m => (Text -> a -> SharedRep m a) -> [Text] -> [a] -> SharedRep m [a]
- accordionListify :: Monad m => Maybe Text -> Text -> Maybe Text -> (Text -> a -> SharedRep m a) -> [Text] -> [a] -> SharedRep m [a]
- accordionListifyMaybe :: Monad m => Maybe Text -> Text -> (a -> SharedRep m a) -> (Bool -> SharedRep m Bool) -> [Text] -> [(Bool, a)] -> SharedRep m [(Bool, a)]
- listifyDefault :: Monad m => Maybe Text -> Text -> (Text -> a -> SharedRep m a) -> [a] -> SharedRep m [a]
- listifyMaybe :: Monad m => Maybe Text -> Text -> (Text -> Maybe a -> SharedRep m (Maybe a)) -> Int -> [a] -> SharedRep m [Maybe a]
- listifyMaybe' :: Monad m => Maybe Text -> Text -> (Bool -> SharedRep m Bool) -> (a -> SharedRep m a) -> Int -> a -> [a] -> SharedRep m [a]
- defaultListifyLabels :: Int -> [Text]
- valueModel :: (FromJSON a, MonadState s m) => (a -> s -> s) -> Stream (Of Value) m () -> Stream (Of (Either Text s)) m ()
- valueConsume :: s -> (Element -> s -> s) -> Cont IO (Committer IO (Either Text s)) -> Cont_ IO Value -> IO s
- sharedModel :: (FromJSON a, MonadState s m) => (s -> (s, Either Text b)) -> (a -> s -> s) -> Stream (Of Value) m () -> Stream (Of (Either Text (s, Either Text b))) m ()
- sharedConsume :: (s -> (s, Either Text b)) -> s -> (Element -> s -> s) -> Cont IO (Committer IO (Either Text (s, Either Text b))) -> Cont_ IO Value -> IO s
- runList :: Monad m => SharedRep m a -> [Value] -> m [Either Text (HashMap Text Text, Either Text a)]
- runOnEvent :: SharedRep IO a -> (Rep a -> StateT (Int, HashMap Text Text) IO ()) -> (Either Text (HashMap Text Text, Either Text a) -> IO ()) -> Cont_ IO Value -> IO (HashMap Text Text)
Documentation
Abstracted message event elements
Instances
Eq Element Source # | |
Show Element Source # | |
Generic Element Source # | |
ToJSON Element Source # | |
Defined in Web.Page.Rep | |
FromJSON Element Source # | |
type Rep Element Source # | |
Defined in Web.Page.Rep type Rep Element = D1 (MetaData "Element" "Web.Page.Rep" "web-rep-0.1.2-DZZ9ljrqQSJ9eWvBqn9RmN" False) (C1 (MetaCons "Element" PrefixI True) (S1 (MetaSel (Just "element") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text) :*: S1 (MetaSel (Just "value") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Text))) |
oneRep :: (Monad m, MonadIO m) => Rep a -> (Rep a -> HashMap Text Text -> m ()) -> StateT (HashMap Text Text) m (HashMap Text Text, Either Text a) Source #
type SharedRep m a = SharedRepF m (Html ()) a Source #
runOnce :: Monad m => SharedRep m a -> (Html () -> HashMap Text Text -> m ()) -> m (HashMap Text Text, Either Text a) Source #
accordionListify :: Monad m => Maybe Text -> Text -> Maybe Text -> (Text -> a -> SharedRep m a) -> [Text] -> [a] -> SharedRep m [a] Source #
accordionListifyMaybe :: Monad m => Maybe Text -> Text -> (a -> SharedRep m a) -> (Bool -> SharedRep m Bool) -> [Text] -> [(Bool, a)] -> SharedRep m [(Bool, a)] Source #
listifyDefault :: Monad m => Maybe Text -> Text -> (Text -> a -> SharedRep m a) -> [a] -> SharedRep m [a] Source #
listifyMaybe :: Monad m => Maybe Text -> Text -> (Text -> Maybe a -> SharedRep m (Maybe a)) -> Int -> [a] -> SharedRep m [Maybe a] Source #
listifyMaybe' :: Monad m => Maybe Text -> Text -> (Bool -> SharedRep m Bool) -> (a -> SharedRep m a) -> Int -> a -> [a] -> SharedRep m [a] Source #
defaultListifyLabels :: Int -> [Text] Source #
valueModel :: (FromJSON a, MonadState s m) => (a -> s -> s) -> Stream (Of Value) m () -> Stream (Of (Either Text s)) m () Source #
valueConsume :: s -> (Element -> s -> s) -> Cont IO (Committer IO (Either Text s)) -> Cont_ IO Value -> IO s Source #
consume an Element using a Committer and a Value continuation
sharedModel :: (FromJSON a, MonadState s m) => (s -> (s, Either Text b)) -> (a -> s -> s) -> Stream (Of Value) m () -> Stream (Of (Either Text (s, Either Text b))) m () Source #
sharedConsume :: (s -> (s, Either Text b)) -> s -> (Element -> s -> s) -> Cont IO (Committer IO (Either Text (s, Either Text b))) -> Cont_ IO Value -> IO s Source #