Next: Data Type Generic Index Front Functions, Previous: Data Type Specific Arithmetic Index Functions, Up: The Index Library [Index]

Parameters of ‘`object`’ type may be substituted in function calls by data
of any type.

See The Object Type.

void i_add(index i, integer k, );

inserts data of the type and value described by the last argument in the
*k* position in the *i* index if *i* does not map *k*,
does nothing otherwise

void i_bind(index i, integer k,);

replaces data in the *k* position in the *i* index with a reference
to or a copy of the data described by the last argument (references are made
where data types allow)

See Referable Objects.

object i_case(index i, integer k,);

is the data in the *k* position in the *i* index, as inserted or
replaced by the function with a reference to or a copy of the data described by
the last argument (references are made where the data types allow)

See Referable Objects.

void i_dock(index i, integer k,);

inserts a reference to or a copy of the data described by the last argument
in the *k* position in the *i* index if *i* does not map
*k*, does nothing otherwise (references are made where data types allow)

See Referable Objects.

index i_fit(index i, ...);

is *i*, inserts data of the types and values described by the every second
optional
argument in the positions indicated by the preceding optional arguments in the
*i* index. it faults if one of the insert positions is taken, with data
already inserted remaining.

void i_fix(index i, integer k,);

inserts or replaces data in the *k* position in the *i* index with
data of the type and value described by the last argument

void i_get(&, index i, integer k);

sets the first argument as the data in the *k* position in the *i*
index (data is linked if allowed, copied otherwise)

integer i_jack(&, index i, integer k);

is 0 if the *i* index does not map *k* or if the data in the *k*
position is not of the same type as the first argument, non zero otherwise.
Sets the first argument as the data in the *k* position for the latter
case (data is linked if allowed, copied otherwise).

void i_link(index i, integer k,);

inserts a reference to or a copy of the data described by the last argument
in the *k* position in the *i* index (references are made where data
types allow)

See Referable Objects.

integer i_over(&, index i, integer k);

is 0 if the *i* index does not map *k* or if the data in the *k*
position is not of the same type as the first argument, non zero otherwise.
Sets the first argument as the data in the *k* position for the latter
case and removes *k* from *i*.

object i_pick(index i, integer k);

is the data in the *k* position in the *i* index, the data is
removed from the index

void i_put(index i, integer k,);

inserts data of the type and value described by the last argument in the
*k* position in the *i* index

object i_query(index i, integer k);

is the data in the *k* position in the *i* index

void i_replace(index i, integer k,);

replaces data in the *k* position in the *i* index with data of the
type and value described by the last argument

index i_tie(index i, ...);

is *i*, inserts references to or copies of data of the types and values
described by
the every second optional argument in the positions indicated by the preceding
optional arguments in the *i* index. it faults if one of the insert
positions is taken, with data already inserted remaining.

See Referable Objects.

void i_yank(&, index i, integer k);

sets the first argument as the data in the *k* position in the *i*
index and removes *k* from *i*