Libparserutils
buffer.h
Go to the documentation of this file.
1 /*
2  * This file is part of LibParserUtils.
3  * Licensed under the MIT License,
4  * http://www.opensource.org/licenses/mit-license.php
5  * Copyright 2008 John-Mark Bell <jmb@netsurf-browser.org>
6  */
7 
8 #ifndef parserutils_utils_buffer_h_
9 #define parserutils_utils_buffer_h_
10 
11 #ifdef __cplusplus
12 extern "C"
13 {
14 #endif
15 
16 #include <parserutils/errors.h>
17 #include <parserutils/functypes.h>
18 
20 {
21  uint8_t *data;
22  size_t length;
23  size_t allocated;
24 };
26 
29 
31  const uint8_t *data, size_t len);
33  size_t offset, const uint8_t *data, size_t len);
35  size_t offset, size_t len);
36 
38 
40 
41 #ifdef __cplusplus
42 }
43 #endif
44 
45 #endif
46 
size_t length
Definition: buffer.h:22
parserutils_error parserutils_buffer_grow(parserutils_buffer *buffer)
Extend the amount of space allocated for a memory buffer.
Definition: buffer.c:150
parserutils_error parserutils_buffer_randomise(parserutils_buffer *buffer)
Definition: buffer.c:162
parserutils_error
Definition: errors.h:18
uint8_t * data
Definition: buffer.h:21
size_t len
Definition: codec_8859.c:23
parserutils_error parserutils_buffer_create(parserutils_buffer **buffer)
Create a memory buffer.
Definition: buffer.c:22
parserutils_error parserutils_buffer_insert(parserutils_buffer *buffer, size_t offset, const uint8_t *data, size_t len)
Insert data into a memory buffer.
Definition: buffer.c:97
parserutils_error parserutils_buffer_discard(parserutils_buffer *buffer, size_t offset, size_t len)
Discard a section of a memory buffer.
Definition: buffer.c:130
size_t allocated
Definition: buffer.h:23
parserutils_error parserutils_buffer_append(parserutils_buffer *buffer, const uint8_t *data, size_t len)
Append data to a memory buffer.
Definition: buffer.c:72
parserutils_error parserutils_buffer_destroy(parserutils_buffer *buffer)
Destroy a memory buffer.
Definition: buffer.c:53