-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A Haskell implementation of MessagePack -- -- A Haskell implementation of MessagePack http://msgpack.org/ @package msgpack @version 0.6.1.1 -- | MessagePack map labeling type module Data.MessagePack.Assoc newtype Assoc a Assoc :: a -> Assoc a unAssoc :: Assoc a -> a instance Typeable1 Assoc instance Show a => Show (Assoc a) instance Eq a => Eq (Assoc a) instance Ord a => Ord (Assoc a) instance NFData a => NFData (Assoc a) -- | MessagePack Serializer using Data.Binary.Pack module Data.MessagePack.Pack -- | Serializable class class Packable a put :: Packable a => a -> Put -- | Pack Haskell data to MessagePack string. pack :: Packable a => a -> ByteString instance [incoherent] Packable a => Packable (Maybe a) instance [incoherent] (Packable k, Packable v) => Packable (Assoc (Vector (k, v))) instance [incoherent] (Packable k, Packable v) => Packable (Assoc [(k, v)]) instance [incoherent] (Packable a1, Packable a2, Packable a3, Packable a4, Packable a5, Packable a6, Packable a7, Packable a8, Packable a9) => Packable (a1, a2, a3, a4, a5, a6, a7, a8, a9) instance [incoherent] (Packable a1, Packable a2, Packable a3, Packable a4, Packable a5, Packable a6, Packable a7, Packable a8) => Packable (a1, a2, a3, a4, a5, a6, a7, a8) instance [incoherent] (Packable a1, Packable a2, Packable a3, Packable a4, Packable a5, Packable a6, Packable a7) => Packable (a1, a2, a3, a4, a5, a6, a7) instance [incoherent] (Packable a1, Packable a2, Packable a3, Packable a4, Packable a5, Packable a6) => Packable (a1, a2, a3, a4, a5, a6) instance [incoherent] (Packable a1, Packable a2, Packable a3, Packable a4, Packable a5) => Packable (a1, a2, a3, a4, a5) instance [incoherent] (Packable a1, Packable a2, Packable a3, Packable a4) => Packable (a1, a2, a3, a4) instance [incoherent] (Packable a1, Packable a2, Packable a3) => Packable (a1, a2, a3) instance [incoherent] (Packable a1, Packable a2) => Packable (a1, a2) instance [incoherent] Packable a => Packable (Vector a) instance [incoherent] Packable a => Packable [a] instance [incoherent] Packable Text instance [incoherent] Packable Text instance [incoherent] Packable ByteString instance [incoherent] Packable ByteString instance [incoherent] Packable String instance [incoherent] Packable Double instance [incoherent] Packable Float instance [incoherent] Packable Bool instance [incoherent] Packable () instance [incoherent] Packable Int -- | MessagePack Deserializer using Data.Attoparsec module Data.MessagePack.Unpack -- | Deserializable class class Unpackable a get :: Unpackable a => Parser a -- | Unpack MessagePack string to Haskell data. unpack :: (Unpackable a, IsByteString s) => s -> a -- | Unpack MessagePack string to Haskell data. tryUnpack :: (Unpackable a, IsByteString s) => s -> Either String a -- | The exception of unpack data UnpackError UnpackError :: String -> UnpackError class IsByteString s toBS :: IsByteString s => s -> ByteString instance [incoherent] Typeable UnpackError instance [incoherent] Show UnpackError instance [incoherent] Unpackable a => Unpackable (Maybe a) instance [incoherent] (Unpackable k, Unpackable v) => Unpackable (Assoc (Vector (k, v))) instance [incoherent] (Unpackable k, Unpackable v) => Unpackable (Assoc [(k, v)]) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3, Unpackable a4, Unpackable a5, Unpackable a6, Unpackable a7, Unpackable a8, Unpackable a9) => Unpackable (a1, a2, a3, a4, a5, a6, a7, a8, a9) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3, Unpackable a4, Unpackable a5, Unpackable a6, Unpackable a7, Unpackable a8) => Unpackable (a1, a2, a3, a4, a5, a6, a7, a8) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3, Unpackable a4, Unpackable a5, Unpackable a6, Unpackable a7) => Unpackable (a1, a2, a3, a4, a5, a6, a7) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3, Unpackable a4, Unpackable a5, Unpackable a6) => Unpackable (a1, a2, a3, a4, a5, a6) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3, Unpackable a4, Unpackable a5) => Unpackable (a1, a2, a3, a4, a5) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3, Unpackable a4) => Unpackable (a1, a2, a3, a4) instance [incoherent] (Unpackable a1, Unpackable a2, Unpackable a3) => Unpackable (a1, a2, a3) instance [incoherent] (Unpackable a1, Unpackable a2) => Unpackable (a1, a2) instance [incoherent] Unpackable a => Unpackable (Vector a) instance [incoherent] Unpackable a => Unpackable [a] instance [incoherent] Unpackable Text instance [incoherent] Unpackable Text instance [incoherent] Unpackable ByteString instance [incoherent] Unpackable ByteString instance [incoherent] Unpackable String instance [incoherent] Unpackable Double instance [incoherent] Unpackable Float instance [incoherent] Unpackable Bool instance [incoherent] Unpackable () instance [incoherent] Unpackable Int instance [incoherent] Exception UnpackError instance [incoherent] IsByteString ByteString instance [incoherent] IsByteString ByteString -- | MessagePack object definition module Data.MessagePack.Object -- | Object Representation of MessagePack data. data Object ObjectNil :: Object ObjectBool :: Bool -> Object ObjectInteger :: Int -> Object ObjectFloat :: Float -> 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 (Unpackable a, Packable a) => OBJECT a toObject :: OBJECT a => a -> Object fromObject :: OBJECT a => Object -> a tryFromObject :: OBJECT a => Object -> Either String a instance [incoherent] Typeable Object instance [incoherent] Show Object instance [incoherent] Eq Object instance [incoherent] Ord Object instance [incoherent] OBJECT a => OBJECT (Maybe a) instance [incoherent] (OBJECT a, OBJECT b) => OBJECT (Assoc [(a, b)]) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3, OBJECT a4, OBJECT a5, OBJECT a6, OBJECT a7, OBJECT a8, OBJECT a9) => OBJECT (a1, a2, a3, a4, a5, a6, a7, a8, a9) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3, OBJECT a4, OBJECT a5, OBJECT a6, OBJECT a7, OBJECT a8) => OBJECT (a1, a2, a3, a4, a5, a6, a7, a8) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3, OBJECT a4, OBJECT a5, OBJECT a6, OBJECT a7) => OBJECT (a1, a2, a3, a4, a5, a6, a7) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3, OBJECT a4, OBJECT a5, OBJECT a6) => OBJECT (a1, a2, a3, a4, a5, a6) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3, OBJECT a4, OBJECT a5) => OBJECT (a1, a2, a3, a4, a5) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3, OBJECT a4) => OBJECT (a1, a2, a3, a4) instance [incoherent] (OBJECT a1, OBJECT a2, OBJECT a3) => OBJECT (a1, a2, a3) instance [incoherent] (OBJECT a1, OBJECT a2) => OBJECT (a1, a2) instance [incoherent] OBJECT a => OBJECT [a] instance [incoherent] OBJECT Text instance [incoherent] OBJECT Text instance [incoherent] OBJECT ByteString instance [incoherent] OBJECT ByteString instance [incoherent] OBJECT String instance [incoherent] OBJECT Float instance [incoherent] OBJECT Double instance [incoherent] OBJECT Bool instance [incoherent] OBJECT Int instance [incoherent] OBJECT () instance [incoherent] OBJECT Object instance [incoherent] Packable Object instance [incoherent] Unpackable Object instance [incoherent] NFData Object module Data.MessagePack.Derive derivePack :: Name -> Q [Dec] deriveUnpack :: Name -> Q [Dec] deriveObject :: Name -> Q [Dec] -- | Simple interface to pack and unpack MessagePack data. module Data.MessagePack