Gobo Eiffel Structure Library
Copyright (c) 2003-2004, Eric Bezault and others
Eiffel Forum License v2 (see forum.txt)
$Date: 2005/01/30 18:02:29 $
$Revision: 1.4 $
-- Routines that ought to be in class ANY
-- (From KL_IMPORTED_ANY_ROUTINES)
-- Equality tester;
-- A void equality tester means that =
-- will be used as comparison criterion.
-- (From DS_SEARCHABLE)
-- New external cursor for traversal
-- (From DS_TRAVERSABLE)
-- Maximum number of items in container
-- (From DS_RESIZABLE)
-- Number of items in container
-- (From DS_CONTAINER)
-- Initial capacity in make_default
-- (Default value: 10)
-- (From DS_RESIZABLE)
-- Number of times v appears in container
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- (From DS_SEARCHABLE)
-- Is there no valid position to left of internal cursor?
-- (From DS_BILINEAR)
-- Can set_equality_tester be called with a_tester
-- as argument in current state of container?
-- (Default answer: True.)
-- (From DS_SEARCHABLE)
-- Does container include v?
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- (From DS_SEARCHABLE)
-- Is container empty?
-- (From DS_CONTAINER)
-- Is internal cursor on first item?
-- (From DS_LINEAR)
-- Is container full?
-- (From DS_RESIZABLE)
-- Is internal cursor on last item?
-- (From DS_BILINEAR)
-- Is there no item at internal cursor position?
-- (From DS_TRAVERSABLE)
-- Does container use the same comparison
-- criterion as other?
-- (From DS_SEARCHABLE)
-- Are v and u considered equal?
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- (From DS_SEARCHABLE)
-- Is internal cursor at same position as a_cursor?
-- (From DS_TRAVERSABLE)
-- Move internal cursor to last position.
-- (From DS_BILINEAR)
-- Move internal cursor to first position at or before current
-- position where item_for_iteration and v are equal.
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- Move before if not found.
-- (From DS_BILINEAR)
-- Move internal cursor to first position at or after current
-- position where item_for_iteration and v are equal.
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- Move after if not found.
-- (From DS_LINEAR)
-- Remove all items from container.
-- Move all cursors off.
-- (From DS_CONTAINER)
-- Resize container so that it can contain
-- at least n items. Do not lose any item.
-- Do not move cursors.
-- (From DS_RESIZABLE)
-- Clone of current object
-- (From KL_CLONABLE)
-- Search for item at key k.
-- If found, set found to true, and set
-- found_item to item associated with k.
-- Add a_cursor to the list of traversing cursors
-- (i.e. cursors associated with current container
-- and which are not currently off).
-- (From DS_TRAVERSABLE)
-- Special values for before and after cursor positions
-- Is there no valid position to right of a_cursor?
-- (From DS_LINEAR)
-- Move a_cursor to previous position.
-- (From DS_BILINEAR)
-- Is there no valid position to left of a_cursor?
-- (From DS_BILINEAR)
-- Move a_cursor to last position.
-- (From DS_BILINEAR)
-- Move a_cursor to next position.
-- (From DS_LINEAR)
-- Move a_cursor to other's position.
-- (From DS_TRAVERSABLE)
-- Is a_cursor on first item?
-- (From DS_LINEAR)
-- Is a_cursor on last item?
-- (From DS_BILINEAR)
-- Item at a_cursor position
-- (From DS_TRAVERSABLE)
-- Is there no item at a_cursor position?
-- (From DS_TRAVERSABLE)
-- Is a_cursor at same position as other?
-- (From DS_TRAVERSABLE)
-- Move a_cursor to first position at or before its current
-- position where cursor_item (a_cursor) and v are equal.
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- Move before if not found.
-- (From DS_BILINEAR)
-- Move a_cursor to first position at or after its current
-- position where cursor_item (a_cursor) and v are equal.
-- (Use equality_tester's comparison criterion
-- if not void, use = criterion otherwise.)
-- Move after if not found.
-- (From DS_LINEAR)
-- Move a_cursor to first position.
-- (From DS_LINEAR)
-- Remove a_cursor from the list of traversing cursors
-- (i.e. cursors associated with current container
-- and which are not currently off).
-- (From DS_TRAVERSABLE)
-- Set equality_tester to a_tester.
-- A void equality tester means that =
-- will be used as comparison criterion.
-- (From DS_SEARCHABLE)
-- Put v at position i in items.
-- All slots to the right of this position
-- are guaranteed to be free
Sparse containers. Used for implementation of sparse tables and sparse sets.