25 #include <aerospike/as_util.h>
26 #include <aerospike/as_val.h>
39 typedef enum as_bytes_type_e {
239 typedef struct as_bytes_s {
292 #define as_bytes_inita(__bytes, __capacity)\
293 as_bytes_init(__bytes, 0);\
294 (__bytes)->type = AS_BYTES_BLOB;\
295 (__bytes)->free = false;\
296 (__bytes)->capacity = __capacity;\
297 (__bytes)->size = 0;\
298 (__bytes)->value = (uint8_t *) alloca(__capacity * sizeof(uint8_t));
410 if ( !bytes )
return 0;
425 if ( !bytes )
return 0;
454 if ( !bytes )
return;
476 return bytes ? bytes->
value : fallback;
648 return as_bytes_set(bytes, index, (uint8_t *) &value, 1);
664 return as_bytes_set(bytes, index, (uint8_t *) &value, 2);
680 return as_bytes_set(bytes, index, (uint8_t *) &value, 4);
696 return as_bytes_set(bytes, index, (uint8_t *) &value, 8);
853 if ( !bytes )
return NULL;
uint32_t as_bytes_size(const as_bytes *bytes)
bool as_bytes_set_byte(as_bytes *bytes, uint32_t index, uint8_t value)
bool as_bytes_set_int64(as_bytes *bytes, uint32_t index, int64_t value)
uint8_t * as_bytes_getorelse(const as_bytes *bytes, uint8_t *fallback)
uint32_t as_bytes_val_hashcode(const as_val *v)
as_bytes * as_bytes_new(uint32_t capacity)
bool as_bytes_truncate(as_bytes *bytes, uint32_t n)
as_bytes * as_bytes_fromval(const as_val *v)
bool as_bytes_set_int16(as_bytes *bytes, uint32_t index, int16_t value)
char * as_bytes_val_tostring(const as_val *v)
as_bytes * as_bytes_init_wrap(as_bytes *bytes, uint8_t *value, uint32_t size, bool free)
uint32_t as_bytes_get_int32(const as_bytes *bytes, uint32_t index, int32_t *value)
bool as_bytes_ensure(as_bytes *bytes, uint32_t n, bool resize)
as_bytes * as_bytes_new_wrap(uint8_t *value, uint32_t size, bool free)
uint32_t as_bytes_get_int16(const as_bytes *bytes, uint32_t index, int16_t *value)
bool as_bytes_append_int64(as_bytes *bytes, int64_t value)
#define as_val_destroy(__v)
uint8_t * as_bytes_get(const as_bytes *bytes)
uint32_t as_bytes_copy(const as_bytes *bytes, uint32_t index, uint8_t *value, uint32_t size)
uint32_t as_bytes_get_int64(const as_bytes *bytes, uint32_t index, int64_t *value)
void as_bytes_set_type(as_bytes *bytes, as_bytes_type type)
uint32_t as_bytes_capacity(const as_bytes *bytes)
as_bytes * as_bytes_init(as_bytes *bytes, uint32_t capacity)
#define as_util_fromval(object, type_id, type)
bool as_bytes_append_int16(as_bytes *bytes, int16_t value)
void as_bytes_destroy(as_bytes *bytes)
as_val * as_bytes_toval(const as_bytes *b)
bool as_bytes_append_byte(as_bytes *bytes, uint8_t value)
bool as_bytes_append(as_bytes *bytes, const uint8_t *value, uint32_t size)
bool as_bytes_set(as_bytes *bytes, uint32_t index, const uint8_t *value, uint32_t size)
uint32_t as_bytes_get_byte(const as_bytes *bytes, uint32_t index, uint8_t *value)
bool as_bytes_append_int32(as_bytes *bytes, int32_t value)
void as_bytes_val_destroy(as_val *v)
bool as_bytes_set_int32(as_bytes *bytes, uint32_t index, int32_t value)
uint8_t * as_bytes_tobytes(const as_bytes *bytes, uint32_t *size)
as_bytes_type as_bytes_get_type(const as_bytes *bytes)