31 union as_map_iterator_u;
33 struct as_map_hooks_s;
57 typedef struct as_map_s {
74 const struct as_map_hooks_s *
hooks;
81 typedef struct as_map_hooks_s {
107 uint32_t (* hashcode)(
const as_map * map);
184 union as_map_iterator_u * (* iterator_new)(
const as_map * map);
193 union as_map_iterator_u * (* iterator_init)(
const as_map * map,
union as_map_iterator_u * it);
355 return as_util_hook(
foreach,
false, map, callback, udata);
void as_map_val_destroy(as_val *val)
#define as_util_fromval(object, type_id, type)
static union as_map_iterator_u * as_map_iterator_new(const as_map *map)
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_hook(hook, default, object, args...)
char * as_map_val_tostring(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)
const struct as_map_hooks_s * hooks
static as_map * as_map_fromval(const as_val *val)
#define as_val_destroy(__v)
uint32_t as_map_val_hashcode(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)
static int as_map_set(as_map *map, const as_val *key, const as_val *val)
bool(* as_map_foreach_callback)(const as_val *key, const as_val *value, void *udata)
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)