| Safe Haskell | None |
|---|
CerealPlus.Deserialize
Description
A monad-transformer over Data.Serialize.Get.
- data Deserialize m a
- runPartial :: Deserialize m a -> ByteString -> m (Result m a)
- data Result m a
- liftGet :: Monad m => Get a -> Deserialize m a
- throwError :: Monad m => Text -> Deserialize m a
Documentation
data Deserialize m a Source
A deserialization monad transformer.
Instances
| MFunctor Deserialize | |
| MonadTrans Deserialize | |
| Monad m => Monad (Deserialize m) | |
| Monad m => Functor (Deserialize m) | |
| Monad m => Applicative (Deserialize m) | |
| MonadIO m => MonadIO (Deserialize m) |
runPartial :: Deserialize m a -> ByteString -> m (Result m a)Source
Run on a chunk of data and get a partial result.
A partial result of deserialization.
liftGet :: Monad m => Get a -> Deserialize m aSource
Run a Get action of the "cereal" library.
throwError :: Monad m => Text -> Deserialize m aSource
Fail with a message.
Since there's no consensus on how to implement catchError of MonadError,
we'll go with just this function.
It is not implemented as fail because fail is pure evil.