Range-v3
Range algorithms, views, and actions for the Standard Library
ranges::starts_with_fn Struct Reference

Public Member Functions

template<typename I1 , typename S1 , typename I2 , typename S2 , typename Comp = equal_to, typename Proj1 = identity, typename Proj2 = identity>
constexpr auto operator() (I1 first1, S1 last1, I2 first2, S2 last2, Comp comp={}, Proj1 proj1={}, Proj2 proj2={}) const noexcept -> bool requires input_iterator< I1 > &&sentinel_for< S1, I1 > &&input_iterator< I2 > &&sentinel_for< S2, I2 > &&indirectly_comparable< I1, I2, Comp, Proj1, Proj2 >
 
template<typename R1 , typename R2 , typename Comp = equal_to, typename Proj1 = identity, typename Proj2 = identity>
constexpr auto operator() (R1 &&r1, R2 &&r2, Comp comp={}, Proj1 proj1={}, Proj2 proj2={}) const noexcept -> bool requires input_range< R1 > &&input_range< R2 > &&indirectly_comparable< iterator_t< R1 >, iterator_t< R2 >, Comp, Proj1, Proj2 >