Maps

group maps

Defines

ML_MAP_FOREACH(MAP, ITER)

Typedefs

typedef struct ml_map_t ml_map_t
typedef struct ml_map_node_t ml_map_node_t

Enums

enum ml_map_order_t

Values:

enumerator MAP_ORDER_INSERT
enumerator MAP_ORDER_LRU
enumerator MAP_ORDER_MRU
enumerator MAP_ORDER_ASC
enumerator MAP_ORDER_DESC

Functions

ml_value_t *ml_map() __attribute__((malloc))
ml_value_t *ml_map_search(ml_value_t *Map, ml_value_t *Key)
ml_value_t *ml_map_search0(ml_value_t *Map, ml_value_t *Key)
ml_map_node_t *ml_map_slot(ml_value_t *Map, ml_value_t *Key)
ml_value_t *ml_map_insert(ml_value_t *Map, ml_value_t *Key, ml_value_t *Value)
ml_value_t *ml_map_delete(ml_value_t *Map, ml_value_t *Key)
static inline int ml_map_size(ml_value_t *Map)
int ml_map_foreach(ml_value_t *Map, void *Data, int (*callback)(ml_value_t*, ml_value_t*, void*))
static inline int ml_map_iter_forward(ml_value_t *Map0, ml_map_iter_t *Iter)
static inline int ml_map_iter_next(ml_map_iter_t *Iter)
static inline int ml_map_iter_backward(ml_value_t *Map0, ml_map_iter_t *Iter)
static inline int ml_map_iter_prev(ml_map_iter_t *Iter)
static inline int ml_map_iter_valid(ml_map_iter_t *Iter)
static inline void ml_map_iter_update(ml_map_iter_t *Iter, ml_value_t *Value)

Variables

ml_type_t MLMapT[]
struct ml_map_t
struct ml_map_node_t
struct ml_map_iter_t