MessagePack C API
In looking at the C API for MessagePack, there are a number of functions to appropriately serialize (pack) the data according to type: msgpack_pack_uint8 , msgpack_pack_int32 , ... There doesn't seem to be the equivalent call in the API to unpack the data. msgpack_unpack_next returns a msgpack_object . These objects only have coarse granularity of types (the largest of the type: int64, double, ...), based on the enums included. Am I missing something here? Is the expectation that the coarse object be used and then cast? How should unpacking be done properly? Furthermore, is there any good