Namespaces
Variants
Views
Actions

iter_swap(ranges::zip_view::iterator)

From cppreference.com
< cpp‎ | ranges‎ | zip view‎ | iterator
 
 
Ranges library
Range access
Range conversions
(C++23)

Range primitives



Dangling iterator handling
Range concepts
Views

Range factories
Range adaptors
Range generators
Range adaptor objects
Range adaptor closure objects
Helper items
(until C++23)(C++23)


 
 
friend constexpr void iter_swap( const /*iterator*/& x, const /*iterator*/& y )

    noexcept(/* see below */)
        requires (std::indirectly_swappable<ranges::iterator_t<

            /*maybe-const*/<Const, Views>>> && ...);
(since C++23)

Performs ranges::iter_swap(std::get<i>(x.current_), std::get<i>(y.current_)) for every integer i in [0sizeof...(Views)), where current_ denotes the underlying tuple-like object that holds iterators to elements of adapted views.

This function is not visible to ordinary unqualified or qualified lookup, and can only be found by argument-dependent lookup when zip_view::iterator<Const> is an associated class of the arguments.

[edit] Parameters

x, y - iterators to the elements to swap

[edit] Return value

(none)

[edit] Exceptions

noexcept specification:  
noexcept(

  (noexcept(ranges::iter_swap(
    declval<const ranges::iterator_t</*maybe-const*/<Const, Views>>&>(),

    declval<const ranges::iterator_t</*maybe-const*/<Const, Views>>&>())) &&...))