Motr
M0
|
#include <xcode.h>
Data Fields | |
enum m0_xcode_endianness | xcx_end |
struct m0_bufvec_cursor | xcx_buf |
struct m0_xcode_cursor | xcx_it |
void *(* | xcx_alloc )(struct m0_xcode_cursor *, size_t) |
void(* | xcx_free )(struct m0_xcode_cursor *ctx) |
int(* | xcx_iter )(const struct m0_xcode_cursor *it) |
void(* | xcx_iter_end )(const struct m0_xcode_cursor *it) |
xcoding context.
The context contains information about attributes of xcoding operation and its progress.
void*(* xcx_alloc) (struct m0_xcode_cursor *, size_t) |
struct m0_bufvec_cursor xcx_buf |
Current point in the buffer vector.
The cursor points to the where encoding will write the next byte and from where decoding will read the next byte.
It should be initialised with m0_bufvec_cursor_init() prior to m0_xcode_encode() or m0_xcode_decode() call. The size of the cursors buffer should be not less than the size of serialised structure representation.
enum m0_xcode_endianness xcx_end |
void(* xcx_free) (struct m0_xcode_cursor *ctx) |
struct m0_xcode_cursor xcx_it |
int(* xcx_iter) (const struct m0_xcode_cursor *it) |
This function is called every time type is traversed with m0_xcode_next().
void(* xcx_iter_end) (const struct m0_xcode_cursor *it) |
This function is called when xcode.c:ctx_walk() function called from m0_xcode_encode(), m0_xcode_decode(), m0_xcode_length() ends processing of given xcode context and xcode object embeded into it.