+
Point of view
All features
deferred class INDEXABLE [E_]
Summary
An INDEXABLE[E_] is a finite readable sequence of objects of type E_.
A good performance should always be obtained by sequentially accessing an INDEXABLE with increasing indexes (from lower to upper), as demonstrated in the following code snippet :
 from
    i := a_indexable.lower
 until
    i > a_indexable.upper
 loop
    do_something_with(a_indexable.item(i))
    i := i + 1
 end
Other accessing methods (including random access and sequential access from upper to lower) may or may not lead to acceptable performance, depending on the particular implementation of INDEXABLE.
Direct parents
Inherit list: HOARD
Known children
Inherit list: SEARCHABLE, TRAVERSABLE
Overview
Features
Indexing:
{ANY}
Accessing:
{ANY}
Agent-based features:
{ANY}
Printing:
{ANY}
Counting:
{ANY}
Agent-based features:
{ANY}
{}
lower: INTEGER_32
deferred function
{ANY}
Minimum index.
upper: INTEGER_32
deferred function
{ANY}
Maximum index.
valid_index (i: INTEGER_32): BOOLEAN
effective function
{ANY}
True when i is valid (i.e., inside actual bounds).
item (i: INTEGER_32): E_
deferred function
{ANY}
Item at the corresponding index i.
first: E_
deferred function
{ANY}
The very first item.
last: E_
deferred function
{ANY}
The last item.
for_each (action: PROCEDURE[TUPLE[TUPLE 1[E_]]])
effective procedure
{ANY}
Apply action to every item of Current.
for_all (test: FUNCTION[TUPLE[TUPLE 1[E_]]]): BOOLEAN
effective function
{ANY}
Do all items satisfy test?
exists (test: FUNCTION[TUPLE[TUPLE 1[E_]]]): BOOLEAN
effective function
{ANY}
Does at least one item satisfy test?
aggregate (action: FUNCTION[TUPLE[TUPLE 2[E_, E_], E_]], initial: E_): E_
effective function
{ANY}
Aggregate all the elements starting from the initial value.
out_in_tagged_out_memory
effective procedure
{ANY}
Append terse printable representation of current object in tagged_out_memory.
count: INTEGER_32
deferred function
{ANY}
Number of available items in the hoard.
is_empty: BOOLEAN
deferred function
{ANY}
Is the hoard empty ?
See also count.
do_all (action: ROUTINE[TUPLE[TUPLE 1[E_]]])
frozen
effective procedure
{ANY}
Apply action to every item of Current.
_inline_agent1 (a: ROUTINE[TUPLE[TUPLE 1[E_]]], e: E_)
frozen
effective procedure
{}