Lines Matching refs:buffer
304 #define can_read(buffer, size) ((buffer != NULL) && (((buffer)->offset + size) <= (buffer)->length)) argument
306 #define can_access_at_index(buffer, index) ((buffer != NULL) && (((buffer)->offset + index) < (buff… argument
307 #define cannot_access_at_index(buffer, index) (!can_access_at_index(buffer, index)) argument
309 #define buffer_at_offset(buffer) ((buffer)->content + (buffer)->offset) argument
436 unsigned char *buffer; member
451 if ((p == NULL) || (p->buffer == NULL)) in ensure()
471 return p->buffer + p->offset; in ensure()
499 newbuffer = (unsigned char*)p->hooks.reallocate(p->buffer, newsize); in ensure()
502 p->hooks.deallocate(p->buffer); in ensure()
504 p->buffer = NULL; in ensure()
515 p->hooks.deallocate(p->buffer); in ensure()
517 p->buffer = NULL; in ensure()
523 memcpy(newbuffer, p->buffer, p->offset + 1); in ensure()
525 p->hooks.deallocate(p->buffer); in ensure()
528 p->buffer = newbuffer; in ensure()
534 static void update_offset(printbuffer * const buffer) in update_offset() argument
537 if ((buffer == NULL) || (buffer->buffer == NULL)) in update_offset()
541 buffer_pointer = buffer->buffer + buffer->offset; in update_offset()
543 buffer->offset += strlen((const char*)buffer_pointer); in update_offset()
1043 static parse_buffer *buffer_skip_whitespace(parse_buffer * const buffer) in buffer_skip_whitespace() argument
1045 if ((buffer == NULL) || (buffer->content == NULL)) in buffer_skip_whitespace()
1050 if (cannot_access_at_index(buffer, 0)) in buffer_skip_whitespace()
1052 return buffer; in buffer_skip_whitespace()
1055 while (can_access_at_index(buffer, 0) && (buffer_at_offset(buffer)[0] <= 32)) in buffer_skip_whitespace()
1057 buffer->offset++; in buffer_skip_whitespace()
1060 if (buffer->offset == buffer->length) in buffer_skip_whitespace()
1062 buffer->offset--; in buffer_skip_whitespace()
1065 return buffer; in buffer_skip_whitespace()
1069 static parse_buffer *skip_utf8_bom(parse_buffer * const buffer) in skip_utf8_bom() argument
1071 if ((buffer == NULL) || (buffer->content == NULL) || (buffer->offset != 0)) in skip_utf8_bom()
1076 …if (can_access_at_index(buffer, 4) && (strncmp((const char*)buffer_at_offset(buffer), "\xEF\xBB\xB… in skip_utf8_bom()
1078 buffer->offset += 3; in skip_utf8_bom()
1081 return buffer; in skip_utf8_bom()
1102 parse_buffer buffer = { 0, 0, 0, 0, { 0, 0, 0 } }; in cJSON_ParseWithLengthOpts() local
1114 buffer.content = (const unsigned char*)value; in cJSON_ParseWithLengthOpts()
1115 buffer.length = buffer_length; in cJSON_ParseWithLengthOpts()
1116 buffer.offset = 0; in cJSON_ParseWithLengthOpts()
1117 buffer.hooks = global_hooks; in cJSON_ParseWithLengthOpts()
1125 if (!parse_value(item, buffer_skip_whitespace(skip_utf8_bom(&buffer)))) in cJSON_ParseWithLengthOpts()
1134 buffer_skip_whitespace(&buffer); in cJSON_ParseWithLengthOpts()
1135 if ((buffer.offset >= buffer.length) || buffer_at_offset(&buffer)[0] != '\0') in cJSON_ParseWithLengthOpts()
1142 *return_parse_end = (const char*)buffer_at_offset(&buffer); in cJSON_ParseWithLengthOpts()
1159 if (buffer.offset < buffer.length) in cJSON_ParseWithLengthOpts()
1161 local_error.position = buffer.offset; in cJSON_ParseWithLengthOpts()
1163 else if (buffer.length > 0) in cJSON_ParseWithLengthOpts()
1165 local_error.position = buffer.length - 1; in cJSON_ParseWithLengthOpts()
1195 printbuffer buffer[1]; in print() local
1198 memset(buffer, 0, sizeof(buffer)); in print()
1201 buffer->buffer = (unsigned char*) hooks->allocate(default_buffer_size); in print()
1202 buffer->length = default_buffer_size; in print()
1203 buffer->format = format; in print()
1204 buffer->hooks = *hooks; in print()
1205 if (buffer->buffer == NULL) in print()
1211 if (!print_value(item, buffer)) in print()
1215 update_offset(buffer); in print()
1220 printed = (unsigned char*) hooks->reallocate(buffer->buffer, buffer->offset + 1); in print()
1224 buffer->buffer = NULL; in print()
1228 printed = (unsigned char*) hooks->allocate(buffer->offset + 1); in print()
1233 memcpy(printed, buffer->buffer, cjson_min(buffer->length, buffer->offset + 1)); in print()
1234 printed[buffer->offset] = '\0'; /* just to be sure */ in print()
1237 hooks->deallocate(buffer->buffer); in print()
1243 if (buffer->buffer != NULL) in print()
1245 hooks->deallocate(buffer->buffer); in print()
1276 p.buffer = (unsigned char*)global_hooks.allocate((size_t)prebuffer); in cJSON_PrintBuffered()
1277 if (!p.buffer) in cJSON_PrintBuffered()
1290 global_hooks.deallocate(p.buffer); in cJSON_PrintBuffered()
1294 return (char*)p.buffer; in cJSON_PrintBuffered()
1297 CJSON_PUBLIC(cJSON_bool) cJSON_PrintPreallocated(cJSON *item, char *buffer, const int length, const… in cJSON_PrintPreallocated() argument
1301 if ((length < 0) || (buffer == NULL)) in cJSON_PrintPreallocated()
1306 p.buffer = (unsigned char*)buffer; in cJSON_PrintPreallocated()