Namespaces
Variants

std::ranges::concat_view<Vistas...>::iterator<Const>::satisfy, prev, advance-fwd, advance-bwd

De es.cppreference.net
 
 
Biblioteca de rangos
Adaptadores de rangos
 
 

Las siguientes plantillas de funciones miembro de solo exposición simplifican la descripción.

Cada plantilla de función auxiliar tiene un parámetro de plantilla sin tipo de tipo std::size_t.

  • Si el nombre del parámetro de plantilla es N, el argumento de plantilla es siempre it_ .index().
  • Si el nombre del parámetro de plantilla es I, el argumento de plantilla puede ser cualquier valor std::size_t en [0, sizeof...(Views)).

Sin embargo, es posible que el argumento de plantilla no sea una constante en tiempo de compilación, por lo tanto, el efecto real de helper <non_const>(/* arguments */) es similar a if (non_const == 0)
    helper <0>(/* arguments */);
else if (non_const == 1)
    helper <1>(/* arguments */);
/* other indices */
else if (non_const == (sizeof...(Views) - 1))
    helper <sizeof...(Views) - 1>(/* arguments */);
.

Plantillas auxiliares

Plantillas auxiliares mini

template < std:: size_t N >
constexpr auto /*get-iter*/ ( ) ;
(1) ( solo para exposición* )
template < std:: size_t I >
constexpr auto /*get-view*/ ( ) ;
(2) ( solo para exposición* )
template < std:: size_t I >
constexpr auto /*get-begin*/ ( ) ;
(3) ( solo para exposición* )
template < std:: size_t I >
constexpr auto /*get-end*/ ( ) ;
(4) ( solo para exposición* )
template < std:: size_t N >
constexpr auto /*to-underlying-diff-type*/ ( difference_type value ) ;
(5) ( solo para exposición* )

Las mini plantillas auxiliares simplifican la descripción de las principales plantillas auxiliares y funciones miembro. No están incluidas en los documentos estándar de C++.

1) Obtiene el iterador subyacente contenido en it_ .
Devuelve std::get < N > ( it_  ) .
2) Obtiene la I ésima vista en el padre concat_view .
Devuelve std::get < I > ( parent_  - > views_  ) .
3) Obtiene un iterador al inicio de la I -ésima vista en el concat_view padre.
Devuelve ranges:: begin ( get-view  < I > ( ) ) .
4) Obtiene un iterador pasado-el-final o un centinela de la I -ésima vista en el concat_view padre.
Devuelve ranges:: end ( get-view  < I > ( ) ) .
5) Convierte value al tipo de diferencia subyacente del iterador subyacente contenido en it_ .
Devuelve static_cast < std:: iter_difference_t < std:: variant_alternative_t < N, base-iter  >>> ( value ) .

std::ranges::concat_view:: iterator :: satisfy <N>

template < std:: size_t N >
constexpr void /*satisfy*/ ( ) ;
( solo para exposición* )

Ajusta la posición actual (global) de it_ .

  • Si N es igual a sizeof... ( Views ) - 1 , no hace nada.
  • De lo contrario, equivalente a if ( get-iter  < N > ( ) == get-end  < N > ( ) )
    {
    it_  . template emplace < N + 1 > ( get-begin  < N + 1 > ( ) ) ;
    satisfy  < N + 1 > ( ) ;
    }
    .

std::ranges::concat_view:: iterator :: prev <N>

template < size_t N >
constexpr void /*prev*/ ( ) ;
( solo para exposición* )

Mueve it_ a la posición (global) anterior.

  • Si N es ​ 0 ​ , equivalente a -- get-iter  < 0 > ( ) ; .
  • En caso contrario, equivalente a if ( get-iter  < N > ( ) == get-begin  < N > ( ) )
    {
    it_  . template emplace < N - 1 > ( get-end  < N - 1 > ( ) ) ;
    prev  < N - 1 > ( ) ;
    }
    else
    -- get-iter  < N > ( ) ;
    .

std::ranges::concat_view:: iterator :: advance-fwd <N>

template < size_t N >

constexpr void /*advance-fwd*/ ( difference_type offset,

difference_type steps ) ;
( solo para exposición* )

Avanza la posición (global) actual step pasos hacia adelante.

Parámetros

offset - el desplazamiento de la posición (global) actual desde el inicio del rango al que it_ se refiere actualmente
steps - el número de pasos a avanzar hacia adelante

std::ranges::concat_view:: iterator :: advance-bwd <N>

template < size_t N >

constexpr void /*advance-bwd*/ ( difference_type offset,

difference_type steps ) ;
( solo para exposición* )

Avanza la posición actual (global) steps pasos hacia atrás.

Parámetros

offset - el desplazamiento de la posición actual (global) desde el inicio del rango al que it_ se refiere actualmente
steps - el número de pasos a avanzar hacia atrás