#ifndef __RARCHDB_MSGPACK_H__ #define __RARCHDB_MSGPACK_H__ #include struct rmsgpack_read_callbacks { int (* read_nil) (void *); int (* read_bool)(int, void *); int (* read_int) (int64_t, void *); int (* read_uint)(uint64_t, void *); int (* read_string)(char *, uint32_t, void *); int (* read_bin)(void *, uint32_t, void *); int (* read_map_start) (uint32_t, void *); int (* read_array_start)(uint32_t, void *); }; int rmsgpack_write_array_header( int fd, uint32_t size ); int rmsgpack_write_map_header( int fd, uint32_t size ); int rmsgpack_write_string( int fd, const char * s, uint32_t len ); int rmsgpack_write_bin( int fd, const void * s, uint32_t len ); int rmsgpack_write_nil(int fd); int rmsgpack_write_bool( int fd, int value ); int rmsgpack_write_int( int fd, int64_t value ); int rmsgpack_write_uint( int fd, uint64_t value ); int rmsgpack_read( int fd, struct rmsgpack_read_callbacks * callbacks, void * data ); #endif