diff options
Diffstat (limited to 'buf.h')
-rw-r--r-- | buf.h | 39 |
1 files changed, 39 insertions, 0 deletions
@@ -0,0 +1,39 @@ +#ifndef __BUF_H +#define __BUF_H + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> + +typedef struct bbuf { + int size; + int buf_size; + char *buf; +} bbuf; + +//operations on plain buffers also operations on bufer to buffer should be +//supoorted + +//create new buffer without content +bbuf* bbuf_new(int size); + +//set buffer value +int bbuf_set(bbuf *a, char *val, int size); +//get copy of buffer +bbuf *bbuf_copy(bbuf *buf); +//get buffer from buffer +int bbuf_get(bbuf *buf, char **val, int *size); +//resize buffer +int bbuf_realloc(bbuf *buf, int size); +//increase buffer for size +int bbuf_inc(bbuf *a, char *b, int size); +//decrease buffer for size +int bbuf_dec(bbuf *a, char *b, int size); +//free buffer +void bbuf_free(bbuf *buf); + +int bbuf_concat(bbuf *a, bbuf *b); + +void bbuf_free(bbuf *buf); + +#endif
\ No newline at end of file |