|
template<typename I1 , typename S1 , typename I2 , typename C = equal_to, typename P1 = identity, typename P2 = identity> |
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > | ranges::__attribute__ ((deprecated("Use the variant of ranges::is_permutation that takes an upper bound " "for both sequences"))) bool is_permutation(I1 begin1 |
| function template is_permutation
|
|
template<typename Rng1 , typename I2Ref , typename C = equal_to, typename P1 = identity, typename P2 = identity> |
requires forward_range< Rng1 > &&forward_iterator< uncvref_t< I2Ref > > &&indirectly_comparable< iterator_t< Rng1 >, uncvref_t< I2Ref >, C, P1, P2 > | ranges::__attribute__ ((deprecated("Use the variant of ranges::is_permutation that takes an upper bound " "for both sequences"))) bool is_permutation(Rng1 &&rng1 |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 I2 C P1 P2 I1 &&forward_iterator< I2 > &&sentinel_for< S2, I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > bool | ranges::is_permutation (I1 begin1, S1 end1, I2 begin2, S2 end2, C pred=C{}, P1 proj1=P1{}, P2 proj2=P2{}) |
|
requires forward_range< Rng1 > &&forward_iterator< uncvref_t< I2Ref > > &&indirectly_comparable< iterator_t< Rng1 >, uncvref_t< I2Ref >, C, P1, P2 > I2Ref C P1 P2 P2 bool | ranges::is_permutation (Rng1 &&rng1, Rng2 &&rng2, C pred=C{}, P1 proj1=P1{}, P2 proj2=P2{}) |
|
template<typename I , typename S , typename C = less, typename P = identity> |
requires bidirectional_iterator< I > &&sentinel_for< S, I > &&sortable< I, C, P > bool | ranges::next_permutation (I first, S end_, C pred=C{}, P proj=P{}) |
| function template next_permutation
|
|
template<typename Rng , typename C = less, typename P = identity> |
requires bidirectional_range< Rng > &&sortable< iterator_t< Rng >, C, P > bool | ranges::next_permutation (Rng &&rng, C pred=C{}, P proj=P{}) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
template<typename I , typename S , typename C = less, typename P = identity> |
requires bidirectional_iterator< I > &&sentinel_for< S, I > &&sortable< I, C, P > bool | ranges::prev_permutation (I first, S end_, C pred=C{}, P proj=P{}) |
| function template prev_permutation
|
|
template<typename Rng , typename C = less, typename P = identity> |
requires bidirectional_range< Rng > &&sortable< iterator_t< Rng >, C, P > bool | ranges::prev_permutation (Rng &&rng, C pred=C{}, P proj=P{}) |
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
|
|
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 I2 | ranges::begin2 |
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 | ranges::end1 |
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 I2 C P1 P2 | ranges::I2 |
|
requires forward_range< Rng1 > &&forward_iterator< uncvref_t< I2Ref > > &&indirectly_comparable< iterator_t< Rng1 >, uncvref_t< I2Ref >, C, P1, P2 > I2Ref C P1 P2 | ranges::iterator_t< Rng2 > |
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 I2 C P1 P2 | ranges::P2 = identity > requires ` forward_iterator<I1> && sentinel_for<S1 |
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 I2 C P1 P2 | ranges::proj2 |
|
requires forward_range< Rng1 > &&forward_iterator< uncvref_t< I2Ref > > &&indirectly_comparable< iterator_t< Rng1 >, uncvref_t< I2Ref >, C, P1, P2 > I2Ref C P1 P2 | ranges::Rng2 |
|
requires forward_iterator< I1 > &&sentinel_for< S1, I1 > &&forward_iterator< I2 > &&indirectly_comparable< I1, I2, C, P1, P2 > S1 I2 C P1 P2 | ranges::S2 |
|