Next: , Previous: , Up: The Index Library   [Index]


11.5.5 Data Type Specific Index Functions

i_a_<type-name>

void i_a_<type-name>(index i, integer k, <type> d);

inserts data of the <type> data type and d value in the k position in the i index if i index does not map k, does nothing otherwise

i_b_<type-name>

void i_b_<type-name>(index i, integer k, <type> d);

replaces data in the k position in the i index with a reference to the d data (the types of the replaced and replacing data do not have to match, the function applies only to data types allowing for multiple refereces)

See Referable Objects.

i_c_<type-name>

void i_c_<type-name>(index i, integer k, <type> d);

inserts or replaces data in the k position in the i index with a reference to the d data (the types of the replaced and replacing data do not have to match, the function applies only to data types allowing for multiple refereces)

See Referable Objects.

i_d_<type-name>

void i_d_<type-name>(index i, integer k, <type> d);

inserts a reference to the d data in the k position in the i index if i does not map k, does nothing otherwise (the function applies only to data types allowing for multiple references)

See Referable Objects.

i_e_<type-name>

<type> i_e_<type-name>(<type> &d, index i, integer k);

is the data in the k position in the i index, sets d as the same data (assumed of the <type> data type) and removes it from the index

i_f_<type-name>

void i_f_<type-name>(index i, integer k, <type> d);

inserts or replaces data in the k position in the i index with data of the <type> data type and d value (the types of the replaced and replacing data do not have to match)

i_g_<type-name>

<type> i_g_<type-name>(<type> &d, index i, integer k);

is the data in the k position in the i index, sets d as the same (data is linked if allowed, copied otherwise, data assumed of the <type> data type)

i_i_<type-name>

<type> i_i_<type-name>(<type> &d, index i, integer k);

is the data in the k position in the i index, sets d as the same (conversions between intrinsic numerical types are performed, <type> is one of them)

i_j_<type-name>

integer i_j_<type-name>(<type> &d, 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 <type> data type, non zero otherwise. Sets d as the data in the k position for the latter case (links data if the data type allows, copies it otherwise).

i_k_<type-name>

integer i_k_<type-name>(<type> &d, index i, integer k);

is 0 if the i index does map k and if the data in the k position is not of the <type> data type, non zero otherwise. Inserts data of the <type> data type and some <type> data type specific default value in the k position if i does not map k. Sets d to refer the data in the k position if the data is of the <type> data type.

Equivalent to:

integer
i_k_<type-name>(<type> &d, index i, integer k)
{
    if (!i_key(r, s)) {
        i_n_<type-name>(r, s);
    }

    return i_j_<type-name>(d, r, s);
}

i_l_<type-name>

void i_l_<type-name>(index i, integer k, <type> d);

inserts a reference to the d data in the k position in the i index (the function applies only to data types allowing for multiple references)

See Referable Objects.

i_n_<type-name>

<type> i_n_<type-name>(index i, integer k);

is (new) data of the <type> data type and some <type> data type specific default value in the k position in the i index (data is created by the function call)

i_p_<type-name>

void i_p_<type-name>(index i, integer k, <type> d);

inserts data of the <type> data type and d value in the k position in the i index

i_q_<type-name>

<type> i_q_<type-name>(index i, integer k);

is the data in the k position in the i index (assumed of the <type> data type)

i_r_<type-name>

void i_r_<type-name>(index i, integer k, <type> d);

replaces data in the k position in the i index with data of the <type> data type and d value (the types of the replaced and replacing data do not have to match)

i_s_<type-name>

integer i_s_<type-name>(index i, integer k);

is non zero if the data in the k position in the i index is of the <type> data type, zero if it is not

i_v_<type-name>

<type> i_v_<type-name>(index i, integer k);

is (new) data of the <type> data type in the k position in the i index (data is created by the function call if i does not map k and set to some <type> data type specific default value)

i_x_<type-name>

<type> i_x_<type-name>(index i, integer k);

is the data in the k position in the i index (assumed of the <type> data type), the data is removed from the index

i_y_<type-name>

<type> i_y_<type-name>(index i, integer k);

is the data in the k position in the i index (conversions between intrinsic numerical types are performed, <type> is one of them)


Next: , Previous: , Up: The Index Library   [Index]