Up: Index Library Samples   [Index]


7.29.3.1 Traversing Indexes

Indexs may be traversed by keys. Starting from the first to the last:

integer j;
index i;

...

if (i_first(i, j)) {
    do {

...

    } while (i_greater(i, j, j));
}

Starting from the last, backwards:

integer j;
index i;

...

if (i_last(i, j)) {
    do {

...

    } while (i_less(i, j, j));
}

Traversing may be started at any point.

Traversing an index mapping integers for integers and starting at 1001:

integer j;
index i;

j = 1001;
if (i_greaterorequal(i, j, j)) {
    integer a;

    a = i[j];
    do {
	o_form("~: ~\n", j, a);
    } while (is_n_integer(a, i, j, j));
}