/**
 * Test first iterator is less than second iterator.
 */
bool_t iterator_less(iterator_t it_first, iterator_t it_second)
{
    assert(_iterator_is_valid(it_first));
    assert(_iterator_is_valid(it_second));
    assert(_iterator_limit_type(it_first, _RANDOM_ACCESS_ITERATOR));
    assert(_iterator_limit_type(it_second, _RANDOM_ACCESS_ITERATOR));

    switch (it_first._t_containertype) {
        case _VECTOR_CONTAINER:
            return _vector_iterator_less(it_first, it_second);
            break;
        case _DEQUE_CONTAINER:
            return _deque_iterator_less(it_first, it_second);
            break;
        case _BASIC_STRING_CONTAINER:
            return _basic_string_iterator_less(it_first, it_second);
            break;
        default:
            assert(false);
            return false;
            break;
    }
}
Example #2
0
/**
 * Testing of the first iterator is located in front of the second iterator.
 */
bool_t _deque_iterator_before(deque_iterator_t it_first, deque_iterator_t it_second)
{
    return _deque_iterator_less(it_first, it_second);
}