Namespaces
Variants

std:: range-default-formatter <std::range_format::string> , std:: range-default-formatter <std::range_format::debug_string>

From cppreference.net
std::formatter< range >
range-default-formatter specializations
range-default-formatter <std::range_format::string>
range-default-formatter <std::range_format::debug_string>
Definido en el encabezado <format>
template < std:: range_format K, ranges:: input_range R, class CharT >

requires ( K == std :: range_format :: string || K == std :: range_format :: debug_string )

struct /*range-default-formatter*/ < K, R, CharT > ;
(desde C++23)
( solo para exposición* )

La plantilla de clase /*range-default-formatter*/ para tipos de rango está especializada para formatear rangos como cadena o cadena escapada si std:: format_kind < R > es std :: range_format :: string o std :: range_format :: debug_string .

Contenidos

Miembros de datos

Miembro Definición
underlying_ (privado) el formateador subyacente de tipo std:: formatter < std:: basic_string < CharT > , CharT >
( objeto miembro solo para exposición* )

Funciones miembro

(constructor)
(implicitly declared)
construye un range-default-formatter
(función miembro pública)
parse
analiza el especificador de formato según lo especificado por std-format-spec
(función miembro pública)
format
escribe la salida formateada según lo especificado por std-format-spec
(función miembro pública)

std:: range-default-formatter <std::range_format::string>:: parse
std:: range-default-formatter <std::range_format::debug_string>:: parse

template < class ParseContext >
constexpr auto parse ( ParseContext & ctx ) - > ParseContext :: iterator ;

Equivalente a:

auto i = underlying_. parse ( ctx ) ;
if constexpr ( K == std :: range_format :: debug_string )
underlying_. set_debug_format ( ) ;
return i ;

Retorna un iterador más allá del final de la std-format-spec .

std:: range-default-formatter <std::range_format::string>:: format
std:: range-default-formatter <std::range_format::debug_string>:: format

template < class FormatContext >
auto format ( /* ver más abajo */ & r, FormatContext & ctx ) const - > FormatContext :: iterator ;

Si ranges:: input_range < const R > es true , el tipo de r es const R & . De lo contrario, el tipo es R & .

Sea s un std:: basic_string < CharT > como si se construyera s con std:: basic_string < CharT > ( std:: from_range , r ) tal que ranges:: equal ( s, r ) sea true .

Equivalente a return underlying_. format ( s, ctx ) ; .

Devuelve un iterador más allá del final del rango de salida.

Véase también

(C++20)
define las reglas de formato para un tipo dado
(plantilla de clase)
plantilla de clase que ayuda a implementar std::formatter especializaciones para tipos de rango
(plantilla de clase)