Namespaces
Variants

std::generator<Ref,V,Allocator>::iterator

De es.cppreference.net
 
 
Biblioteca de utilerías
Soporte de lenguaje
Soporte de tipos (tipos básicos, RTTI)
Macros de prueba de características de biblioteca (C++20)
Utilerías de programa
Funciones variádicas
Soporte de corrutinas (C++20)
Soporte de contratos (C++26)
Comparación de tres vías
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilerías generales
Operadores relacionales (obsoleto en C++20)
 
Soporte de corrutinas
Rasgos de corrutinas
Manejador de corrutinas
Corrutinas sin operación
Esperables triviales
Generadores de rango
(C++23)
 
Biblioteca de rangos
Adaptadores de rango
 
 
class /*iterator*/;
(solo exposición*)

El tipo de retorno de generator::begin. Modela indirectly_readable y input_iterator.

Tipos miembro

Miembro Definición
value_type std::generator::value
difference_type std::ptrdiff_t

Miembros de datos

Miembro Descripción
std::coroutine_handle<std::generator::promise_type> coroutine_ un manejador de corrutina
(objeto miembro solo para exposición*)

Funciones miembro

construye un iterador
(función miembro pública)
asigna otro iterador
(función miembro pública)
devuelve un valor subyacente
(función miembro pública)
avanza el iterador
(función miembro pública)

std::generator:: iterator :: iterator

/*iterator*/ ( /*iterator*/ && other ) noexcept ;
(desde C++23)

Inicializa coroutine_ con std:: exchange ( other. coroutine_ , { } ) ; .

std::generator:: iterator :: operator=

/*iterator*/ & operator = ( /*iterator*/ && other ) noexcept ;
(desde C++23)

Equivalente a coroutine_ = std:: exchange ( other. coroutine_ , { } ) ; .

Retorna: * this .

std::generator:: iterator :: operator*

reference operator * ( ) const
noexcept ( std:: is_nothrow_copy_constructible_v < reference > ) ;
(desde C++23)
  1. Sea reference el tipo subyacente de std::generator .
  2. Sea para algún objeto generador x su coroutine_ en la pila * x. active_ .
  3. Sea x. active_ - > top ( ) referido a una corrutina suspendida con objeto de promesa p .

Equivalente a return static_cast < reference > ( * p. value_ ) ; .

std::generator:: iterator :: operator++

constexpr /*iterator*/ & operator ++ ( ) ;
(1) (desde C++23)
constexpr void operator ++ ( int ) ;
(2) (desde C++23)
1) Sea para algún objeto generador x la coroutine_ en la pila * x. active_ .
Equivalente a x. active_ - > top ( ) . resume ( ) .
Retorna: * this .
2) Equivalente a ++* this ; .

Funciones no miembro

(C++23)
compara el iterador subyacente con un centinela
(función)

operator== (std::generator:: iterator )

friend bool operator == ( const /*iterator*/ & i, std:: default_sentinel_t ) ;
(desde C++23)

Equivalente a return i. coroutine_ . done ( ) ; .

El operador != es sintetizado a partir de operator== .

Esta función no es visible para la búsqueda no calificada ordinaria o la búsqueda calificada , y solo puede ser encontrada mediante búsqueda dependiente de argumentos cuando std::generator:: iterator es una clase asociada de los argumentos.

Ejemplo