47 #define odr_max(o) ((o)->op->size - ((o)->op->bp - (o)->op->buf))
78 #define ODR_MAX_STACK 2000
103 const char *
buf,
int len);
117 #define ODR_STACK_POP(x) (x)->op->stack_top = (x)->op->stack_top->prev
118 #define ODR_STACK_EMPTY(x) (!(x)->op->stack_top)
119 #define ODR_STACK_NOT_EMPTY(x) ((x)->op->stack_top)
121 #define odr_tell(o) ((o)->op->pos)
129 #define odr_putc(o, c) \
132 (o)->op->pos < (o)->op->size ? \
134 (o)->op->buf[(o)->op->pos++] = (c), \
138 odr_grow_block((o), 1) == 0 ? \
140 (o)->op->buf[(o)->op->pos++] = (c), \
144 (o)->error = OSPACE, \
150 (o)->op->pos > (o)->op->top ? \
152 (o)->op->top = (o)->op->pos, \
Header for ODR (Open Data Representation)
Utility structure used by ber_tag.
struct odr_constack * stack_top
void(* stream_write)(ODR o, void *handle, int type, const char *buf, int len)
void(* stream_close)(void *handle)
const char ** tmp_names_buf
struct odr_constack * stack_first
struct Odr_ber_tag odr_ber_tag
stack for BER constructed items
struct odr_constack * prev
struct odr_constack * next
Header for common YAZ utilities.