std::basic_format_arg<Context>:: handle
|
Definido en el encabezado
<format>
|
||
|
template
<
class
Context
>
class basic_format_arg < Context > :: handle ; |
(desde C++20) | |
Un contenedor con borrado de tipo que permite formatear un objeto de un tipo definido por el usuario.
handle
objetos son típicamente creados por
std::make_format_args
y accedidos a través de
std::visit_format_arg
o las funciones miembro
visit
de
std::basic_format_arg
(desde C++26)
.
Contenidos |
Miembros de datos
Una implementación típica de
handle
es
TriviallyCopyable
y solo almacena dos miembros de datos no estáticos:
- un const void * puntero al objeto a formatear, y
-
un
void
(
*
)
(
std::
basic_format_parse_context
<
Context
::
char_type
>
&
, Context
&
,
const
void
*
)
puntero a función que realiza las operaciones necesarias en la función miembro
format(ver abajo).
Funciones miembro
|
format
(C++20)
|
formatea el objeto referenciado con los contextos dados
(función miembro pública) |
std::basic_format_arg<Context>::handle:: format
|
void
format
(
std::
basic_format_parse_context
<
Context
::
char_type
>
&
parse_ctx,
Context & format_ctx ) const ; |
(desde C++20) | |
Sea
-
Tel tipo del argumento de formato, -
TDsea std:: remove_const_t < T > , -
TQsea const TD si const TD satisface __formattable_with < Context > oTDen caso contrario, y -
refsea una referencia al argumento de formato.
Equivalente a:
typename
Context
::
template
formatter_type
<
TD
>
f
;
parse_ctx.
advance_to
(
f.
parse
(
parse_ctx
)
)
;
format_ctx.
advance_to
(
f.
format
(
const_cast
<
TQ
&
>
(
static_cast
<
const
TD
&
>
(
ref
)
)
, format_ctx
)
)
;
Notas
Un
handle
tiene semántica de referencia para el argumento formateado y no extiende su tiempo de vida. Es responsabilidad del programador asegurar que el argumento sobreviva al
handle
. Normalmente, un
handle
solo se utiliza dentro de funciones de formateo.
Véase también
|
(C++20)
|
plantilla de clase que proporciona acceso a un argumento de formato para formateadores definidos por el usuario
(plantilla de clase) |
|
(C++20)
(C++20)
|
crea un objeto con tipo borrado que referencia todos los argumentos de formato, convertible a
format_args
(plantilla de función) |