Lines Matching defs:size
39 /* Ensure that \blob will be able to fit an additional object of size
52 if (blob->size + additional <= blob->allocated)
79 /* Align the blob->size so that reading or writing a value at (blob->data +
80 * blob->size) will result in an access aligned to a granularity of \alignment
88 const size_t new_size = align64(blob->size, alignment);
90 if (blob->size < new_size) {
91 if (!grow_to_fit(blob, new_size - blob->size))
95 memset(blob->data + blob->size, 0, new_size - blob->size);
96 blob->size = new_size;
113 blob->size = 0;
119 blob_init_fixed(struct blob *blob, void *data, size_t size)
122 blob->allocated = size;
123 blob->size = 0;
129 blob_finish_get_buffer(struct blob *blob, void **buffer, size_t *size)
132 *size = blob->size;
136 *buffer = realloc(*buffer, *size);
146 if (offset + to_write < offset || blob->size < offset + to_write)
166 memcpy(blob->data + blob->size, bytes, to_write);
167 blob->size += to_write;
180 ret = blob->size;
181 blob->size += to_write;
251 blob_reader_init(struct blob_reader *blob, const void *data, size_t size)
254 blob->end = blob->data + size;
259 /* Check that an object of size \size can be read from this blob.
264 ensure_can_read(struct blob_reader *blob, size_t size)
269 if (blob->current <= blob->end && blob->end - blob->current >= size)
278 blob_read_bytes(struct blob_reader *blob, size_t size)
282 if (! ensure_can_read (blob, size))
287 blob->current += size;
293 blob_copy_bytes(struct blob_reader *blob, void *dest, size_t size)
297 bytes = blob_read_bytes(blob, size);
298 if (bytes == NULL || size == 0)
301 memcpy(dest, bytes, size);
305 blob_skip_bytes(struct blob_reader *blob, size_t size)
307 if (ensure_can_read (blob, size))
308 blob->current += size;
316 int size = sizeof(ret); \
317 blob_reader_align(blob, size); \
318 blob_copy_bytes(blob, &ret, size); \
331 int size;
351 size = nul - blob->current + 1;
353 assert(ensure_can_read(blob, size));
357 blob->current += size;