| json-c
    0.17
    | 
Internal string buffer handling. Unless you're writing a json_object_to_json_string_fn implementation for use with json_object_set_serializer() direct use of this is not recommended. More...
| Data Structures | |
| struct | printbuf | 
| Macros | |
| #define | JSON_EXPORT extern | 
| #define | printbuf_memappend_fast(p, bufptr, bufsize) | 
| #define | printbuf_length(p) ((p)->bpos) | 
| #define | printbuf_strappend(pb, str) printbuf_memappend((pb), _printbuf_check_literal(str), sizeof(str) - 1) | 
| Typedefs | |
| typedef struct printbuf | printbuf | 
| Functions | |
| JSON_EXPORT struct printbuf * | printbuf_new (void) | 
| JSON_EXPORT int | printbuf_memappend (struct printbuf *p, const char *buf, int size) | 
| JSON_EXPORT int | printbuf_memset (struct printbuf *pb, int offset, int charvalue, int len) | 
| JSON_EXPORT int | sprintbuf (struct printbuf *p, const char *msg,...) | 
| JSON_EXPORT void | printbuf_reset (struct printbuf *p) | 
| JSON_EXPORT void | printbuf_free (struct printbuf *p) | 
Internal string buffer handling. Unless you're writing a json_object_to_json_string_fn implementation for use with json_object_set_serializer() direct use of this is not recommended.
| #define JSON_EXPORT extern | 
| #define printbuf_length | ( | p | ) | ((p)->bpos) | 
| #define printbuf_memappend_fast | ( | p, | |
| bufptr, | |||
| bufsize | |||
| ) | 
| #define printbuf_strappend | ( | pb, | |
| str | |||
| ) | printbuf_memappend((pb), _printbuf_check_literal(str), sizeof(str) - 1) | 
This is an optimization wrapper around printbuf_memappend() that is useful for appending string literals. Since the size of string constants is known at compile time, using this macro can avoid a costly strlen() call. This is especially helpful when a constant string must be appended many times. If you got here because of a compilation error caused by passing something other than a string literal, use printbuf_memappend_fast() in conjunction with strlen().
See also: printbuf_memappend_fast() printbuf_memappend() sprintbuf()
| JSON_EXPORT void printbuf_free | ( | struct printbuf * | p | ) | 
| JSON_EXPORT int printbuf_memappend | ( | struct printbuf * | p, | 
| const char * | buf, | ||
| int | size | ||
| ) | 
| JSON_EXPORT int printbuf_memset | ( | struct printbuf * | pb, | 
| int | offset, | ||
| int | charvalue, | ||
| int | len | ||
| ) | 
Set len bytes of the buffer to charvalue, starting at offset offset. Similar to calling memset(x, charvalue, len);
The memory allocated for the buffer is extended as necessary.
If offset is -1, this starts at the end of the current data in the buffer.
| 
 | read | 
| JSON_EXPORT void printbuf_reset | ( | struct printbuf * | p | ) | 
| JSON_EXPORT int sprintbuf | ( | struct printbuf * | p, | 
| const char * | msg, | ||
| ... | |||
| ) | 
Formatted print to printbuf.
This function is the most expensive of the available functions for appending string data to a printbuf and should be used only where convenience is more important than speed. Avoid using this function in high performance code or tight loops; in these scenarios, consider using snprintf() with a static buffer in conjunction with one of the printbuf_*append() functions.
See also: printbuf_memappend_fast() printbuf_memappend() printbuf_strappend()
 1.8.2
 1.8.2