2015-01-19 22:47:09 +01:00
|
|
|
#ifndef __RARCHDB_MSGPACK_H__
|
|
|
|
#define __RARCHDB_MSGPACK_H__
|
|
|
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
2015-09-17 07:23:36 +02:00
|
|
|
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 *);
|
2015-01-19 22:47:09 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
int rmsgpack_write_array_header(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
uint32_t size
|
|
|
|
);
|
|
|
|
int rmsgpack_write_map_header(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
uint32_t size
|
|
|
|
);
|
|
|
|
int rmsgpack_write_string(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
const char * s,
|
|
|
|
uint32_t len
|
|
|
|
);
|
|
|
|
int rmsgpack_write_bin(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
const void * s,
|
|
|
|
uint32_t len
|
|
|
|
);
|
2015-09-17 06:12:57 +02:00
|
|
|
int rmsgpack_write_nil(int fd);
|
2015-01-19 22:47:09 +01:00
|
|
|
int rmsgpack_write_bool(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
int value
|
|
|
|
);
|
|
|
|
int rmsgpack_write_int(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
int64_t value
|
|
|
|
);
|
|
|
|
int rmsgpack_write_uint(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
uint64_t value
|
|
|
|
);
|
|
|
|
|
|
|
|
int rmsgpack_read(
|
2015-09-17 06:12:57 +02:00
|
|
|
int fd,
|
2015-01-19 22:47:09 +01:00
|
|
|
struct rmsgpack_read_callbacks * callbacks,
|
|
|
|
void * data
|
|
|
|
);
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|