Control.Monad.Unpack
Documentation
class Unpackable arg whereSource
Associated Types
data UnpackedReaderT arg :: (* -> *) -> * -> *Source
Methods
runUnpackedReaderT :: UnpackedReaderT arg m a -> arg -> m aSource
unpackedReaderT :: (arg -> m a) -> UnpackedReaderT arg m aSource
Instances
| Unpackable Bool | |
| Unpackable Char | |
| Unpackable Int | |
| Unpackable Int8 | |
| Unpackable Int16 | |
| Unpackable Int32 | |
| Unpackable Int64 | |
| Unpackable Word | |
| Unpackable Word8 | |
| Unpackable Word16 | |
| Unpackable Word32 | |
| Unpackable Word64 | |
| Unpackable () | |
| Unpackable ByteString | |
| Unpackable ByteArray | |
| Unpackable Addr | |
| Unpackable (Ptr a[a694]) | |
| Unpackable (ForeignPtr a[a6es]) | |
| Unpackable (Maybe a[a35A]) | |
| Unpackable (MutableByteArray s[a67v]) | |
| Unpackable (Array a[a64B]) | |
| Unpackable (Vector a[a5Fe]) | |
| Unpackable (Vector a[a6kd]) | |
| Unpackable (Vector a[a5Fa]) | |
| Unpackable (Either a[a6t2] b[a6t1]) | |
| Unpackable (MutableArray s[a65A] a[a65z]) | |
| Unpackable (MVector s[a6lP] a[a6lO]) | |
| Unpackable (MVector s[a6ph] a[a6pg]) | |
| Unpackable (MVector s[a6ny] a[a6nx]) |
ask :: (Monad m, Unpackable arg) => UnpackedReaderT arg m argSource
local :: (Monad m, Unpackable arg) => (arg -> arg) -> UnpackedReaderT arg m a -> UnpackedReaderT arg m aSource
type :~> arg = UnpackedReaderT arg IdentitySource
unpack :: Unpackable arg => (arg -> a) -> arg :~> aSource
($~) :: Unpackable arg => (arg :~> a) -> arg -> aSource