Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
fmt::BasicArgFormatter< Impl, Char, Spec > Class Template Reference

#include <format.h>

+ Inheritance diagram for fmt::BasicArgFormatter< Impl, Char, Spec >:
+ Collaboration diagram for fmt::BasicArgFormatter< Impl, Char, Spec >:

Public Member Functions

 BasicArgFormatter (BasicFormatter< Char, Impl > &formatter, Spec &spec, const Char *fmt)
 
void visit_custom (internal::Arg::CustomValue c)
 
- Public Member Functions inherited from fmt::internal::ArgFormatterBase< Impl, Char, Spec >
 ArgFormatterBase (BasicWriter< Char > &w, Spec &s)
 
template<typename T >
void visit_any_int (T value)
 
template<typename T >
void visit_any_double (T value)
 
void visit_bool (bool value)
 
void visit_char (int value)
 
void visit_cstring (const char *value)
 
void visit_string (internal::Arg::StringValue< char > value)
 
void visit_wstring (internal::Arg::StringValue< Char > value)
 
void visit_pointer (const void *value)
 
- Public Member Functions inherited from fmt::ArgVisitor< Impl, void >
void report_unhandled_arg ()
 
void visit_unhandled_arg ()
 
void visit_int (int value)
 
void visit_long_long (LongLong value)
 
void visit_uint (unsigned value)
 
void visit_ulong_long (ULongLong value)
 
void visit_bool (bool value)
 
void visit_char (int value)
 
void visit_any_int (T)
 
void visit_double (double value)
 
void visit_long_double (long double value)
 
void visit_any_double (T)
 
void visit_cstring (const char *)
 
void visit_string (Arg::StringValue< char >)
 
void visit_wstring (Arg::StringValue< wchar_t >)
 
void visit_pointer (const void *)
 
void visit_custom (Arg::CustomValue)
 
void visit (const Arg &arg)
 

Private Attributes

BasicFormatter< Char, Impl > & formatter_
 
const Char * format_
 

Additional Inherited Members

- Public Types inherited from fmt::internal::ArgFormatterBase< Impl, Char, Spec >
typedef Spec SpecType
 
- Protected Member Functions inherited from fmt::internal::ArgFormatterBase< Impl, Char, Spec >
BasicWriter< Char > & writer ()
 
Spec & spec ()
 
void write (bool value)
 
void write (const char *value)
 

Detailed Description

template<typename Impl, typename Char, typename Spec = fmt::FormatSpec>
class fmt::BasicArgFormatter< Impl, Char, Spec >

\rst An argument formatter based on the curiously recurring template pattern <http://en.wikipedia.org/wiki/Curiously_recurring_template_pattern>_.

To use ~fmtBasicArgFormatter define a subclass that implements some or all of the visit methods with the same signatures as the methods in ~fmt::ArgVisitor, for example, ~fmtArgVisitor::visit_int(). Pass the subclass as the Impl template parameter. When a formatting function processes an argument, it will dispatch to a visit method specific to the argument type. For example, if the argument type is double then the ~fmtArgVisitor::visit_double() method of a subclass will be called. If the subclass doesn't contain a method with this signature, then a corresponding method of ~fmtBasicArgFormatter or its superclass will be called. \endrst

Definition at line 2258 of file format.h.

Constructor & Destructor Documentation

◆ BasicArgFormatter()

template<typename Impl , typename Char , typename Spec = fmt::FormatSpec>
fmt::BasicArgFormatter< Impl, Char, Spec >::BasicArgFormatter ( BasicFormatter< Char, Impl > & formatter,
Spec & spec,
const Char * fmt )
inline

\rst Constructs an argument formatter object. formatter* is a reference to the main formatter object, spec contains format specifier information for standard argument types, and fmt points to the part of the format string being parsed for custom argument types. \endrst

Definition at line 2272 of file format.h.

Member Function Documentation

◆ visit_custom()

template<typename Impl , typename Char , typename Spec = fmt::FormatSpec>
void fmt::BasicArgFormatter< Impl, Char, Spec >::visit_custom ( internal::Arg::CustomValue c)
inline

Formats an argument of a custom (user-defined) type.

Definition at line 2278 of file format.h.

Member Data Documentation

◆ format_

template<typename Impl , typename Char , typename Spec = fmt::FormatSpec>
const Char* fmt::BasicArgFormatter< Impl, Char, Spec >::format_
private

Definition at line 2261 of file format.h.

◆ formatter_

template<typename Impl , typename Char , typename Spec = fmt::FormatSpec>
BasicFormatter<Char, Impl>& fmt::BasicArgFormatter< Impl, Char, Spec >::formatter_
private

Definition at line 2260 of file format.h.


The documentation for this class was generated from the following file: