33#ifndef GENLIB_UTIL_MEMBUFFER_H
34#define GENLIB_UTIL_MEMBUFFER_H
43#define MINVAL(a, b) ((a) < (b) ? (a) : (b))
44#define MAXVAL(a, b) ((a) > (b) ? (a) : (b))
68#define MEMBUF_DEF_SIZE_INC (size_t)5
int memptr_cmp(memptr *m, const char *s)
Compares characters of strings passed for number of bytes. If equal for the number of bytes,...
Definition membuffer.c:65
void membuffer_destroy(membuffer *m)
Free's memory allocated for membuffer* m.
Definition membuffer.c:164
int membuffer_set_size(membuffer *m, size_t new_length)
Increases or decreases buffer cap so that at least 'new_length' bytes can be stored.
Definition membuffer.c:106
char * str_alloc(const char *str, size_t str_len)
Allocate memory and copy information from the input string to the newly allocated memory.
Definition membuffer.c:50
void membuffer_attach(membuffer *m, char *new_buf, size_t buf_len)
Definition membuffer.c:291
void membuffer_init(membuffer *m)
Wrapper to membuffer_initialize().
Definition membuffer.c:156
int membuffer_append(membuffer *m, const void *buf, size_t buf_len)
Invokes function to appends data from a constant buffer to the buffer.
Definition membuffer.c:204
int membuffer_assign_str(membuffer *m, const char *c_str)
Wrapper function for membuffer_assign().
Definition membuffer.c:199
char * membuffer_detach(membuffer *m)
Definition membuffer.c:277
int membuffer_append_str(membuffer *m, const char *c_str)
Invokes function to appends data from a constant string to the buffer.
Definition membuffer.c:211
int memptr_cmp_nocase(memptr *m, const char *s)
Compares characters of 2 strings irrespective of the case for a specific count of bytes.
Definition membuffer.c:80
int membuffer_insert(membuffer *m, const void *buf, size_t buf_len, size_t index)
Allocates memory for the new data to be inserted. Does memory management by moving the data from the ...
Definition membuffer.c:216
int membuffer_assign(membuffer *m, const void *buf, size_t buf_len)
Allocate memory to membuffer *m and copy the contents of the in parameter const void *buf.
Definition membuffer.c:174
void membuffer_delete(membuffer *m, size_t index, size_t num_bytes)
Shrink the size of the buffer depending on the current size of the bufer and te input parameters....
Definition membuffer.c:244
Definition membuffer.h:58
size_t size_inc
Definition membuffer.h:66
size_t capacity
Definition membuffer.h:64
size_t length
Definition membuffer.h:62
char * buf
Definition membuffer.h:60
Definition membuffer.h:48
size_t length
Definition membuffer.h:52
char * buf
Definition membuffer.h:50