BloombergLP::bslalg::RangeCompare::equal

Compare each element in the range beginning at the specified start1 position and ending immediately before the specified end1 position, to the corresponding element in the range beginning at the specified start2 position and ending immediately before the specified end2 position, as if by using operator== element-by-element. Optionally specify the length of each range, length1 and length2. Return true if the ranges have the same length and every element in the first range compares equal with the corresponding element in the second, and false otherwise. The behavior is undefined unless length1 is either unspecified or equals the length of the range [start1, end1)], and length2 is either unspecified or equals the length of the range [start2, end2)]. Note that this implementation uses operator== to perform the comparisons, or bit-wise comparison if the value type has the bit-wise equality-comparable trait. Also note that providing lengths may reduce the runtime cost of this operation.

Synopsis

Declared in <bslalg_rangecompare.h>

template<class INPUT_ITER>
static
bool
equal(
    INPUT_ITER start1,
    INPUT_ITER end1,
    INPUT_ITER start2,
    INPUT_ITER end2);