Range-v3
Range algorithms, views, and actions for the Standard Library
equal.hpp File Reference

Functions

template<typename I0 , typename S0 , typename I1 , typename C = equal_to, typename P0 = identity, typename P1 = identity>
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > ranges::__attribute__ ((deprecated("Use the variant of ranges::equal that takes an upper bound for " "both sequences"))) const expr bool equal(I0 begin0
 function template equal
 
template<typename Rng0 , typename I1Ref , typename C = equal_to, typename P0 = identity, typename P1 = identity>
requires input_range< Rng0 > &&input_iterator< uncvref_t< I1Ref > > &&indirectly_comparable< iterator_t< Rng0 >, uncvref_t< I1Ref >, C, P0, P1 > ranges::__attribute__ ((deprecated("Use the variant of ranges::equal that takes an upper bound for " "both sequences"))) const expr bool equal(Rng0 &&rng0
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C P0 P1 I0 &&input_iterator< I1 > &&sentinel_for< S1, I1 > &&constexpr indirectly_comparable< I0, I1, C, P0, P1 > bool ranges::equal (I0 begin0, S0 end0, I1 begin1, S1 end1, C pred=C{}, P0 proj0=P0{}, P1 proj1=P1{})
 
requires input_range< Rng0 > &&input_iterator< uncvref_t< I1Ref > > &&indirectly_comparable< iterator_t< Rng0 >, uncvref_t< I1Ref >, C, P0, P1 > I1Ref C P0 P1 constexpr P1 bool ranges::equal (Rng0 &&rng0, Rng1 &&rng1, C pred=C{}, P0 proj0=P0{}, P1 proj1=P1{})
 

Variables

requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 ranges::begin1
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 ranges::end0
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C P0 P1 ranges::P1 = identity > requires ` input_iterator<I0> && sentinel_for<S0
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C ranges::pred = C{}
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C P0 ranges::proj0 = P0{}
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C P0 P1 ranges::proj1
 
requires input_range< Rng0 > &&input_iterator< uncvref_t< I1Ref > > &&indirectly_comparable< iterator_t< Rng0 >, uncvref_t< I1Ref >, C, P0, P1 > I1Ref C P0 P1 ranges::Rng1
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C P0 P1 ranges::S0
 
requires input_iterator< I0 > &&sentinel_for< S0, I0 > &&input_iterator< I1 > &&indirectly_comparable< I0, I1, C, P0, P1 > S0 I1 C P0 P1 ranges::S1