BloombergLP::bdlc::CompactedArray_ConstIterator

Random-access const iterator over a CompactedArray.

Synopsis

Declared in <bdlc_compactedarray.h>

template<class TYPE>
class CompactedArray_ConstIterator;

Description

This value-semantic class represents a random access iterator providing non-modifiable access to the elements of a CompactedArray. This class provides all functionality of a random access iterator, as defined by the standard, but is not compatible with most standard methods requiring a bidirectional const_iterator.

This class does not perform any bounds checking. Any iterator, it, referencing a CompactedArray array, remains valid while 0 <= it - array.begin() < array.length().

Type Aliases

NameDescription
difference_type Signed type used for distances between iterators.
iterator_category Tag identifying this type as a random-access iterator.
pointer Pointer into the array (unused; always TYPE *).
reference Reference to an element (unused; always TYPE&).
size_type Unsigned type used for lengths and indices.
value_type Element type of the referenced array.

Member Functions

NameDescription
CompactedArray_ConstIterator [constructor]Constructors
operator= Assign to this iterator the value of the specified rhs iterator, and return a reference providing modifiable access to this iterator.
operator* Return a const reference to the element referenced by this iterator.
operator++ Advance this iterator and return a reference to it.
operator+= Advance this iterator by the specified offset.
operator-- Decrement this iterator and return a reference to it.
operator-= Decrement this iterator by the specified offset.
operator-> Return a const reference to the element referenced by this iterator.
operator[] Return a const reference to the element at the specified offset.

Friends

NameDescription
BloombergLP::bdlc::operator>=Return whether the left iterator follows or equals the right (see free operator>=).
BloombergLP::bdlc::operator>Return whether the left iterator follows the right (see free operator>).
BloombergLP::bdlc::operator<=Return whether the left iterator precedes or equals the right (see free operator<=).
BloombergLP::bdlc::operator<Return whether the left iterator precedes the right (see free operator<).
BloombergLP::bdlc::operator-Return the signed distance between two iterators (see free operator-).
BloombergLP::bdlc::operator-Return an iterator at the negated specified offset from the given iterator (see free operator-).
BloombergLP::bdlc::operator+<>Return an iterator at the specified offset from the given iterator (see free operator+).
BloombergLP::bdlc::operator!=Return whether the iterators refer to different positions (see free operator!=).
BloombergLP::bdlc::operator==Return whether the iterators refer to the same position (see free operator==).
BloombergLP::bdlc::operator--Decrement iterator and return its prior value (see free operator--).
BloombergLP::bdlc::operator++Advance iterator and return its prior value (see free operator++).
BloombergLP::bdlc::CompactedArraySpace-efficient value-semantic array of TYPE elements.

Non-Member Functions

NameDescription
operator!=Return true if the specified lhs and rhs iterators differ.
operator+Return an iterator at the specified offset from iterator.
operator+Return an iterator at the specified offset from iterator.
operator++Advance iterator and return its prior value.
operator-Return an iterator at the negated specified offset from iterator.
operator-Return the signed distance between the specified lhs and rhs.
operator--Decrement iterator and return its prior value.
operator<Return true if lhs is less than rhs.
operator<=Return true if lhs is less than or equal to rhs.
operator==Return true if the specified lhs and rhs iterators are equal.
operator>Return true if lhs is greater than rhs.
operator>=Return true if lhs is greater than or equal to rhs.