| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Knit.Utilities.Streamly
Synopsis
- data StreamlyM a
- data StreamlyEffects = StreamlyEffects {
- logIO :: LogSeverity -> Text -> IO ()
- streamlyToKnit :: (Member (Embed IO) r, LogWithPrefixesLE r) => StreamlyM a -> Sem r a
- streamlyToKnitS :: (Member (Embed IO) r, LogWithPrefixesLE r) => SerialT StreamlyM a -> SerialT (Sem r) a
- logStreamly :: LogSeverity -> Text -> StreamlyM ()
Documentation
IO with a ReaderTlayer we can use to expose effects we need. For now just logging.
Instances
| Monad StreamlyM Source # | |
| Functor StreamlyM Source # | |
| Applicative StreamlyM Source # | |
| MonadIO StreamlyM Source # | |
Defined in Knit.Utilities.Streamly | |
| MonadThrow StreamlyM Source # | |
Defined in Knit.Utilities.Streamly | |
| MonadCatch StreamlyM Source # | |
| MonadReader StreamlyEffects StreamlyM Source # | |
Defined in Knit.Utilities.Streamly Methods ask :: StreamlyM StreamlyEffects # local :: (StreamlyEffects -> StreamlyEffects) -> StreamlyM a -> StreamlyM a # reader :: (StreamlyEffects -> a) -> StreamlyM a # | |
| MonadBase IO StreamlyM Source # | |
Defined in Knit.Utilities.Streamly | |
| MonadBaseControl IO StreamlyM Source # | |
| type StM StreamlyM a Source # | |
Defined in Knit.Utilities.Streamly | |
data StreamlyEffects Source #
record-of-functions to hold access to effects we want to have available in this ReaderT over IO wrapper for Streamly
Constructors
| StreamlyEffects | |
Fields
| |
Instances
| MonadReader StreamlyEffects StreamlyM Source # | |
Defined in Knit.Utilities.Streamly Methods ask :: StreamlyM StreamlyEffects # local :: (StreamlyEffects -> StreamlyEffects) -> StreamlyM a -> StreamlyM a # reader :: (StreamlyEffects -> a) -> StreamlyM a # | |
streamlyToKnit :: (Member (Embed IO) r, LogWithPrefixesLE r) => StreamlyM a -> Sem r a Source #
streamlyToKnitS :: (Member (Embed IO) r, LogWithPrefixesLE r) => SerialT StreamlyM a -> SerialT (Sem r) a Source #
Serial streams work fine over Sem, so we can lift the effectful serial stream into Sem r without running.
logStreamly :: LogSeverity -> Text -> StreamlyM () Source #
Use the logging function in the Reader to log in a StreamlyM context.