ne_buffer

3

ne_buffer

string buffer handling

    #include <ne_string.h>

    typedef struct {
        char *data;
        size_t used;
        size_t length;
    } ne_buffer;

## Description

The `ne_buffer` type represents an expandable memory buffer for holding &nul;-terminated strings. The data field points to the beginning of the string, the length of which is given by the used field. The current size of memory allocated is given by the length field. It is not recommended that the fields of a buffer are manipulated directly. The data pointer may change when the buffer is modified.

A buffer is created using ne_buffer_create or ne_buffer_create_sized, and destroyed using ne_buffer_destroy or ne_buffer_finish. The functions ne_buffer_append, ne_buffer_zappend and ne_buffer_concat are used to append data to a buffer.

If the string referenced by the data pointer is modified directly (rather than using one of the functions listed above), `ne_buffer_altered` must be called.