diff options
Diffstat (limited to 'buffer.h')
| -rw-r--r-- | buffer.h | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/buffer.h b/buffer.h new file mode 100644 index 0000000..190f579 --- /dev/null +++ b/buffer.h @@ -0,0 +1,20 @@ +#ifndef BUFFER_H +#define BUFFER_H + +#include <stddef.h> +#include <stdbool.h> +#include "text.h" + +typedef struct { + char *data; /* NULL if empty */ + size_t len; /* current length of data */ + size_t size; /* maximal capacity of the buffer */ +} Buffer; + +void buffer_free(Buffer *buf); +bool buffer_alloc(Buffer *buf, size_t size); +void buffer_truncate(Buffer *buf); +bool buffer_put(Buffer *buf, void *data, size_t len); +bool buffer_append(Buffer *buf, void *data, size_t len); + +#endif |
