25 #include <aerospike/as_iterator.h>
26 #include <aerospike/as_util.h>
27 #include <aerospike/as_val.h>
36 union as_map_iterator_u;
38 struct as_map_hooks_s;
62 typedef struct as_map_s {
79 const struct as_map_hooks_s * hooks;
86 typedef struct as_map_hooks_s {
99 bool (* destroy)(
as_map * map);
112 uint32_t (* hashcode)(
const as_map * map);
121 uint32_t (* size)(
const as_map * map);
155 int (* clear)(
as_map * map);
189 union as_map_iterator_u * (* iterator_new)(
const as_map * map);
198 union as_map_iterator_u * (* iterator_init)(
const as_map * map,
union as_map_iterator_u * it);
360 return as_util_hook(
foreach,
false, map, callback, udata);
static union as_map_iterator_u * as_map_iterator_new(const as_map *map)
#define as_val_destroy(__v)
static as_val * as_map_toval(const as_map *map)
static uint32_t as_map_hashcode(const as_map *map)
static as_val * as_map_get(const as_map *map, const as_val *key)
#define as_util_fromval(object, type_id, type)
uint32_t as_map_val_hashcode(const as_val *val)
as_map * as_map_cons(as_map *map, bool free, void *data, const as_map_hooks *hooks)
static uint32_t as_map_size(const as_map *map)
char * as_map_val_tostring(const as_val *val)
static as_map * as_map_fromval(const as_val *val)
static bool as_map_foreach(const as_map *map, as_map_foreach_callback callback, void *udata)
as_map * as_map_new(void *data, const as_map_hooks *hooks)
as_map * as_map_init(as_map *map, void *data, const as_map_hooks *hooks)
bool(* as_map_foreach_callback)(const as_val *key, const as_val *value, void *udata)
static int as_map_set(as_map *map, const as_val *key, const as_val *val)
#define as_util_hook(hook, default, object, args...)
static union as_map_iterator_u * as_map_iterator_init(union as_map_iterator_u *it, const as_map *map)
static int as_map_clear(as_map *map)
static void as_map_destroy(as_map *map)
static int as_map_remove(as_map *map, const as_val *key)
void as_map_val_destroy(as_val *val)