33#define AS_MAP_FLAGS_MASK 0x13
35union as_map_iterator_u;
61typedef struct as_map_s {
78 const struct as_map_hooks_s*
hooks;
85typedef struct as_map_hooks_s {
174 void (*set_flags)(
as_map* map, uint32_t flags);
198 union as_map_iterator_u* (*iterator_new)(
const as_map* map);
207 union as_map_iterator_u* (*iterator_init)(
const as_map* map,
union as_map_iterator_u* it);
377 return as_util_hook(
foreach,
false, map, callback, udata);
AS_EXTERN void as_map_val_destroy(as_val *val)
AS_EXTERN char * as_map_val_tostring(const as_val *val)
AS_EXTERN uint32_t as_map_val_hashcode(const as_val *val)
bool(* as_map_foreach_callback)(const as_val *key, const as_val *value, void *udata)
#define as_util_hook(hook, default, object,...)
#define as_util_fromval(object, type_id, type)
#define as_util_hook_ret_void(hook, object,...)
#define as_val_destroy(__v)
AS_EXTERN as_map * as_map_cons(as_map *map, bool free, uint32_t flags, const as_map_hooks *hooks)
static as_val * as_map_get(const as_map *map, const as_val *key)
static int as_map_set(as_map *map, const as_val *key, const as_val *val)
static as_val * as_map_toval(const as_map *map)
static bool as_map_foreach(const as_map *map, as_map_foreach_callback callback, void *udata)
static uint32_t as_map_size(const as_map *map)
static union as_map_iterator_u * as_map_iterator_new(const as_map *map)
static int as_map_remove(as_map *map, const as_val *key)
static void as_map_set_flags(as_map *map, uint32_t flags)
static void as_map_destroy(as_map *map)
AS_EXTERN as_map * as_map_new(const as_map_hooks *hooks)
const struct as_map_hooks_s * hooks
static union as_map_iterator_u * as_map_iterator_init(union as_map_iterator_u *it, const as_map *map)
static uint32_t as_map_hashcode(const as_map *map)
AS_EXTERN as_map * as_map_init(as_map *map, const as_map_hooks *hooks)
static int as_map_clear(as_map *map)
static as_map * as_map_fromval(const as_val *val)