Lines Matching full:map

38  *	Declaration of map, a binary tree.
56 /****h* Component Library/Map
58 * Map
61 * Map implements a binary tree that stores user objects. Each item stored
62 * in a map has a unique 64-bit key (duplicates are not allowed). Map
65 * Map may allocate memory when inserting objects, and can therefore fail
66 * operations due to insufficient memory. Use quick map in situations
69 * Map is not thread safe, and users must provide serialization when adding
70 * and removing items from the map.
72 * The map functions operates on a cl_map_t structure which should be treated
98 /****s* Component Library: Map/cl_map_t
103 * Quick map structure.
117 * Quick map object that maintains the map.
121 * in the map.
124 * Map, cl_map_obj_t
127 /****d* Component Library: Map/cl_map_iterator_t
132 * Iterator type used to walk a map.
139 * The iterator should be treated as opaque to prevent corrupting the map.
142 * Map, cl_map_head, cl_map_tail, cl_map_next, cl_map_prev, cl_map_key
145 /****f* Component Library: Map/cl_map_count
151 * in a map.
164 * [in] Pointer to a map whose item count to return.
167 * Returns the number of items stored in the map.
170 * Map, cl_is_map_empty
173 /****f* Component Library: Map/cl_is_map_empty
178 * The cl_is_map_empty function returns whether a map is empty.
191 * [in] Pointer to a map to test for emptiness.
194 * TRUE if the map is empty.
199 * Map, cl_map_count, cl_map_remove_all
202 /****f* Component Library: Map/cl_map_key
207 * The cl_map_key function retrieves the key value of a map item.
231 * Map, cl_map_insert, cl_map_head, cl_map_tail, cl_map_next, cl_map_prev
234 /****f* Component Library: Map/cl_map_construct
239 * The cl_map_construct function constructs a map.
256 * map function except cl_map_init.
259 * Map, cl_map_init, cl_map_destroy, cl_is_map_inited
267 * The cl_is_map_inited function returns whether a map was
275 * The map's pool of map items is the last thing initialized. in cl_is_map_inited()
288 * TRUE if the map was initialized successfully.
293 * Allows checking the state of a map to determine if invoking
297 * Map
300 /****f* Component Library: Map/cl_map_init
305 * The cl_map_init function initialized a map for use.
321 * CL_SUCCESS if the map was initialized successfully.
324 * Allows calling map manipulation functions.
327 * Map, cl_map_destroy, cl_map_insert, cl_map_remove
330 /****f* Component Library: Map/cl_map_destroy
335 * The cl_map_destroy function destroys a map.
343 * [in] Pointer to a map to destroy.
349 * Performs any necessary cleanup of the specified map. Further
350 * operations should not be attempted on the map. cl_map_destroy does
351 * not affect any of the objects stored in the map.
354 * In debug builds, cl_map_destroy asserts that the map is empty.
357 * Map, cl_map_construct, cl_map_init
360 /****f* Component Library: Map/cl_map_end
365 * The cl_map_end function returns the iterator for the end of a map.
381 * Iterator for the end of the map.
384 * cl_map_end is useful for determining the validity of map items returned
386 * by any of these functions compares to the end, the end of the map was
389 * the map is empty.
392 * Map, cl_qmap_head, cl_qmap_tail, cl_qmap_next, cl_qmap_prev
395 /****f* Component Library: Map/cl_map_head
400 * The cl_map_head function returns the map item with the lowest key
401 * value stored in a map.
414 * [in] Pointer to a map whose item with the lowest key is returned.
417 * Iterator for the object with the lowest key in the map.
419 * Iterator for the map end if the map was empty.
422 * cl_map_head does not remove the object from the map.
425 * Map, cl_map_tail, cl_map_next, cl_map_prev, cl_map_end
428 /****f* Component Library: Map/cl_map_tail
433 * The cl_map_tail function returns the map item with the highest key
434 * value stored in a map.
447 * [in] Pointer to a map whose item with the highest key
451 * Iterator for the object with the highest key in the map.
453 * Iterator for the map end if the map was empty.
456 * cl_map_end does no remove the object from the map.
459 * Map, cl_map_head, cl_map_next, cl_map_prev, cl_map_end
462 /****f* Component Library: Map/cl_map_next
467 * The cl_map_next function returns the map item with the next higher
468 * key value than a specified map item.
481 * [in] Iterator for an object in a map whose successor to return.
484 * Iterator for the object with the next higher key value in a map.
486 * Iterator for the map end if the specified object was the last item in
487 * the map.
494 * Map, cl_map_head, cl_map_tail, cl_map_prev, cl_map_end
497 /****f* Component Library: Map/cl_map_prev
502 * The cl_map_prev function returns the map item with the next lower
503 * key value than a precified map item.
516 * [in] Iterator for an object in a map whose predecessor to return.
519 * Iterator for the object with the next lower key value in a map.
521 * Iterator for the map end if the specified object was the first item in
522 * the map.
529 * Map, cl_map_head, cl_map_tail, cl_map_next, cl_map_end
532 /****f* Component Library: Map/cl_map_insert
537 * The cl_map_insert function inserts a map item into a map.
546 * [in] Pointer to a map into which to add the item.
552 * [in] Pointer to an object to insert into the map.
555 * Pointer to the object in the map with the specified key after the call
561 * Insertion operations may cause the map to rebalance.
563 * If the map already contains an object already with the specified key,
568 * Map, cl_map_remove, cl_map_item_t
571 /****f* Component Library: Map/cl_map_get
584 * [in] Pointer to a map from which to retrieve the object with
594 * the map.
597 * cl_map_get does not remove the item from the map.
600 * Map, cl_map_remove, cl_map_get_next
603 /****f* Component Library: Map/cl_map_get_next
617 * [in] Pointer to a map from which to retrieve the object with
627 * value stored in the map.
630 * cl_map_get does not remove the item from the map.
633 * Map, cl_map_remove, cl_map_get
636 /****f* Component Library: Map/cl_map_remove_item
641 * The cl_map_remove_item function removes the specified map item
642 * from a map.
651 * [in] Pointer to a map from which to remove the object associated
655 * [in] Iterator for an object to remove from its map.
661 * Removes the object associated with the specifid iterator from its map.
669 * Map, cl_map_remove, cl_map_remove_all, cl_map_insert, cl_map_head,
673 /****f* Component Library: Map/cl_map_remove
678 * The cl_map_remove function removes the map item with the specified key
679 * from a map.
697 * NULL if no object with the specified key exists in the map.
700 * Map, cl_map_remove_item, cl_map_remove_all, cl_map_insert
703 /****f* Component Library: Map/cl_map_remove_all
708 * The cl_map_remove_all function removes all objects from a map,
717 * [in] Pointer to a map to empty.
723 * Map, cl_map_remove, cl_map_remove_item
726 /****f* Component Library: Map/cl_map_obj
752 * Map, cl_map_head, cl_map_tail, cl_map_next, cl_map_prev
755 /****f* Component Library: Map/cl_map_merge
760 * The cl_map_merge function moves all items from one map to another,
786 * Upon return from cl_map_merge, the map referenced by p_src_map contains
790 * Map, cl_map_delta
793 /****f* Component Library: Map/cl_map_delta
842 * Map, cl_map_merge