cx_map_iterator cx_map_previous(const cx_map *, cx_map_const_iterator)
Get an iterator for the previous pair in the map.
Definition: cxmap.c:143
cxptr cx_map_put(cx_map *, cxcptr, cxcptr)
Set the value of a pair matching the given key.
Definition: cxmap.c:395
cxbool(* cx_tree_compare_func)(cxcptr, cxcptr)
The tree's key comparison operator function.
Definition: cxtree.h:75
cx_map_compare_func cx_map_key_comp(const cx_map *)
Retrieve a map's key comparison function.
Definition: cxmap.c:321
cx_map_iterator cx_map_insert(cx_map *, cxcptr, cxcptr)
Attempt to insert data into a map.
Definition: cxmap.c:657
cxsize cx_map_max_size(const cx_map *)
Get the maximum number of pairs possible.
Definition: cxmap.c:297
cx_map_iterator cx_map_find(const cx_map *, cxcptr)
Locate an element in the map.
Definition: cxmap.c:514
cx_tree_iterator cx_map_iterator
The map iterator datatype.
Definition: cxmap.h:57
void cx_map_swap(cx_map *, cx_map *)
Swap the contents of two maps.
Definition: cxmap.c:345
void cx_map_erase_range(cx_map *, cx_map_iterator, cx_map_iterator)
Erase a range of elements from a map.
Definition: cxmap.c:707
cxsize cx_map_size(const cx_map *)
Get the actual number of pairs in the map.
Definition: cxmap.c:276
cx_map * cx_map_new(cx_map_compare_func compare, cx_free_func key_destroy, cx_free_func value_destroy)
Create a new map without any elements.
Definition: cxmap.c:227
void cx_map_erase_position(cx_map *, cx_map_iterator)
Erase an element from a map.
Definition: cxmap.c:681
cxptr cx_map_get_value(const cx_map *, cx_map_const_iterator)
Get the data from a given iterator position.
Definition: cxmap.c:457
cx_tree cx_map
The map datatype.
Definition: cxmap.h:46
cx_map_iterator cx_map_upper_bound(const cx_map *, cxcptr)
Find the end of a subsequence matching a given key.
Definition: cxmap.c:580
cx_map_iterator cx_map_begin(const cx_map *)
Get an iterator to the first pair in a map.
Definition: cxmap.c:69
void cx_map_equal_range(const cx_map *, cxcptr, cx_map_iterator *, cx_map_iterator *)
Find a subsequence matching a given key.
Definition: cxmap.c:609
void cx_map_delete(cx_map *)
Destroy a map and all its elements.
Definition: cxmap.c:255
cxptr cx_map_get(cx_map *, cxcptr)
Get the data for a given key.
Definition: cxmap.c:482
cxbool cx_map_empty(const cx_map *)
Check whether a map is empty.
Definition: cxmap.c:191
cxptr cx_map_assign(cx_map *, cx_map_iterator, cxcptr)
Assign data to an iterator position.
Definition: cxmap.c:369
cx_map_iterator cx_map_end(const cx_map *)
Get an iterator for the position after the last pair in the map.
Definition: cxmap.c:93
void cx_map_clear(cx_map *)
Remove all pairs from a map.
Definition: cxmap.c:165
cx_tree_compare_func cx_map_compare_func
The map's key comparison operator function.
Definition: cxmap.h:85
cx_tree_const_iterator cx_map_const_iterator
The map constant iterator datatype.
Definition: cxmap.h:69
cxptr cx_map_get_key(const cx_map *, cx_map_const_iterator)
Get the key from a given iterator position.
Definition: cxmap.c:435
cxsize cx_map_erase(cx_map *, cxcptr)
Erase an element from a map according to the provided key.
Definition: cxmap.c:737
cxsize cx_map_count(const cx_map *, cxcptr)
Get the number of elements matching a key.
Definition: cxmap.c:632
cx_map_iterator cx_map_next(const cx_map *, cx_map_const_iterator)
Get an iterator for the next pair in the map.
Definition: cxmap.c:118
cx_map_iterator cx_map_lower_bound(const cx_map *, cxcptr)
Find the beginning of a subsequence matching a given key.
Definition: cxmap.c:544