-- 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/
--
-- This is a fork of msgpack-haskell
-- https://github.com/msgpack/msgpack-haskell, since the original
-- author is unreachable. This fork incorporates a number of bugfixes and
-- is actively being developed.
@package msgpack-arbitrary
@version 0.1.2
-- | A MessagePack parser.
--
-- Example usage: $ echo -ne "x94x01xa1x32xa1x33xa4x50x6fx6fx66" |
-- ./msgpack-parser or $ echo 'ObjectArray [ObjectInt 97, ObjectStr
-- "test", ObjectBool True]' | ./msgpack-parser
--
-- This tool performs two symmetrical functions: 1. It can decode binary
-- data representing a Data.MessagePack.Object into a human-readable
-- string. 2. It can do the reverse: encode a human-readable string into
-- a binary representation of Data.MessagePack.Object.
--
-- No flags are required as it automatically detects which of these two
-- functions it should perform. This is done by first assuming the input
-- is human readable. If it fails to parse it, it then considers it as
-- binary data.
--
-- Therefore, given a valid input, the tool has the following property $
-- .msgpack-parser < input.bin | .msgpack-parser will output
-- back the contents of input.bin.
--
-- In case the input is impossible to parse, nothing is output.
--
-- Known bugs: - If no input is given, the tool exits with
-- "Data.Binary.Get.runGet at position 0: not enough bytes" - The tool
-- does not check that all the input is parsed. Therefore, "abc" is
-- interpreted as just "ObjectInt 97".
module Test.MessagePack.Parser
parse :: (Object -> ByteString) -> (ByteString -> Maybe Object) -> IO ()
module Test.QuickCheck.Instances.MessagePack
instance Test.QuickCheck.Arbitrary.Arbitrary Data.MessagePack.Types.Object.Object
module Data.MessagePack.Arbitrary
module Test.MessagePack.Generate
generate :: (Object -> ByteString) -> IO ()