-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | A Haskell binding to MessagePack
--
-- A Haskell binding to MessagePack http://msgpack.org/
@package msgpack
@version 0.3.1
-- | MessagePack object definition
module Data.MessagePack.Object
-- | Object Representation of MessagePack data.
data Object
ObjectNil :: Object
ObjectBool :: Bool -> Object
ObjectInteger :: Int -> Object
ObjectDouble :: Double -> Object
ObjectRAW :: ByteString -> Object
ObjectArray :: [Object] -> Object
ObjectMap :: [(Object, Object)] -> Object
-- | The class of types serializable to and from MessagePack object
class OBJECT a
toObject :: (OBJECT a) => a -> Object
fromObject :: (OBJECT a) => Object -> Result a
-- | A type for parser results
type Result a = Either String a
instance [overlap ok] Typeable Object
instance [overlap ok] Show Object
instance [overlap ok] Eq Object
instance [overlap ok] Ord Object
instance [overlap ok] (OBJECT a) => OBJECT (Maybe a)
instance [overlap ok] (OBJECT a, OBJECT b) => OBJECT [(a, b)]
instance [overlap ok] (OBJECT a) => OBJECT [a]
instance [overlap ok] OBJECT String
instance [overlap ok] OBJECT ByteString
instance [overlap ok] OBJECT Double
instance [overlap ok] OBJECT Bool
instance [overlap ok] OBJECT Int
instance [overlap ok] OBJECT ()
instance [overlap ok] OBJECT Object
instance [overlap ok] NFData Object
-- | MessagePack Serializer using Data.Binary.Put
module Data.MessagePack.Put
-- | Serializable class
class ObjectPut a
put :: (ObjectPut a) => a -> Put
instance [incoherent] (ObjectPut k, ObjectPut v) => ObjectPut (Vector (k, v))
instance [incoherent] (ObjectPut k, ObjectPut v) => ObjectPut [(k, v)]
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3, ObjectPut a4, ObjectPut a5, ObjectPut a6, ObjectPut a7, ObjectPut a8, ObjectPut a9) => ObjectPut (a1, a2, a3, a4, a5, a6, a7, a8, a9)
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3, ObjectPut a4, ObjectPut a5, ObjectPut a6, ObjectPut a7, ObjectPut a8) => ObjectPut (a1, a2, a3, a4, a5, a6, a7, a8)
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3, ObjectPut a4, ObjectPut a5, ObjectPut a6, ObjectPut a7) => ObjectPut (a1, a2, a3, a4, a5, a6, a7)
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3, ObjectPut a4, ObjectPut a5, ObjectPut a6) => ObjectPut (a1, a2, a3, a4, a5, a6)
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3, ObjectPut a4, ObjectPut a5) => ObjectPut (a1, a2, a3, a4, a5)
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3, ObjectPut a4) => ObjectPut (a1, a2, a3, a4)
instance [incoherent] (ObjectPut a1, ObjectPut a2, ObjectPut a3) => ObjectPut (a1, a2, a3)
instance [incoherent] (ObjectPut a1, ObjectPut a2) => ObjectPut (a1, a2)
instance [incoherent] (ObjectPut a) => ObjectPut (Vector a)
instance [incoherent] (ObjectPut a) => ObjectPut [a]
instance [incoherent] ObjectPut ByteString
instance [incoherent] ObjectPut ByteString
instance [incoherent] ObjectPut String
instance [incoherent] ObjectPut Double
instance [incoherent] ObjectPut Bool
instance [incoherent] ObjectPut ()
instance [incoherent] ObjectPut Int
instance [incoherent] ObjectPut Object
-- | MessagePack Deserializer using Data.Attoparsec
module Data.MessagePack.Parser
-- | Deserializable class
class ObjectGet a
get :: (ObjectGet a) => Parser a
instance [incoherent] (ObjectGet k, ObjectGet v) => ObjectGet (Vector (k, v))
instance [incoherent] (ObjectGet k, ObjectGet v) => ObjectGet [(k, v)]
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3, ObjectGet a4, ObjectGet a5, ObjectGet a6, ObjectGet a7, ObjectGet a8, ObjectGet a9) => ObjectGet (a1, a2, a3, a4, a5, a6, a7, a8, a9)
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3, ObjectGet a4, ObjectGet a5, ObjectGet a6, ObjectGet a7, ObjectGet a8) => ObjectGet (a1, a2, a3, a4, a5, a6, a7, a8)
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3, ObjectGet a4, ObjectGet a5, ObjectGet a6, ObjectGet a7) => ObjectGet (a1, a2, a3, a4, a5, a6, a7)
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3, ObjectGet a4, ObjectGet a5, ObjectGet a6) => ObjectGet (a1, a2, a3, a4, a5, a6)
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3, ObjectGet a4, ObjectGet a5) => ObjectGet (a1, a2, a3, a4, a5)
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3, ObjectGet a4) => ObjectGet (a1, a2, a3, a4)
instance [incoherent] (ObjectGet a1, ObjectGet a2, ObjectGet a3) => ObjectGet (a1, a2, a3)
instance [incoherent] (ObjectGet a1, ObjectGet a2) => ObjectGet (a1, a2)
instance [incoherent] (ObjectGet a) => ObjectGet (Vector a)
instance [incoherent] (ObjectGet a) => ObjectGet [a]
instance [incoherent] ObjectGet ByteString
instance [incoherent] ObjectGet ByteString
instance [incoherent] ObjectGet String
instance [incoherent] ObjectGet Double
instance [incoherent] ObjectGet Bool
instance [incoherent] ObjectGet ()
instance [incoherent] ObjectGet Int
instance [incoherent] ObjectGet Object
-- | MessagePack Deserializer interface to Data.Iteratee
module Data.MessagePack.Iteratee
-- | Deserialize a value
getI :: (Monad m, ObjectGet a) => Iteratee ByteString m a
-- | Enumerator
enumHandleNonBlocking :: (MonadIO m) => Int -> Handle -> Enumerator ByteString m a
-- | Convert Parser to Iteratee
parserToIteratee :: (Monad m) => Parser a -> Iteratee ByteString m a
-- | Simple interface to pack and unpack MessagePack data.
module Data.MessagePack
-- | Pack Haskell data to MessagePack string.
pack :: (ObjectPut a) => a -> ByteString
-- | Unpack MessagePack string to Haskell data.
unpack :: (ObjectGet a, IsByteString s) => s -> a
-- | Pack to ByteString.
packToString :: Put -> ByteString
-- | Pack to Handle
packToHandle :: Handle -> Put -> IO ()
-- | Pack to Handle and Flush Handle
packToHandle' :: Handle -> Put -> IO ()
-- | Pack to File
packToFile :: FilePath -> Put -> IO ()
-- | Unpack from ByteString
unpackFromString :: (Monad m, IsByteString s) => s -> Parser a -> m a
-- | Unpack from Handle
unpackFromHandle :: (MonadCatchIO m) => Handle -> Parser a -> m a
-- | Unpack from File
unpackFromFile :: (MonadCatchIO m) => FilePath -> Parser a -> m a
-- | Iteratee interface to unpack from ByteString
unpackFromStringI :: (Monad m, IsByteString s) => s -> Iteratee ByteString m a -> m a
-- | Iteratee interface to unpack from Handle
unpackFromHandleI :: (MonadCatchIO m) => Handle -> Iteratee ByteString m a -> m a
-- | Iteratee interface to unpack from File
unpackFromFileI :: (MonadCatchIO m) => FilePath -> Iteratee ByteString m a -> m a
instance IsByteString ByteString
instance IsByteString ByteString