Rosetta
Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
basic_format_args< Context > Class Template Reference

#include <core.h>

Public Types

using size_type = int
 
using format_arg = basic_format_arg< Context >
 

Public Member Functions

 basic_format_args ()
 
template<typename... Args>
FMT_INLINE basic_format_args (const format_arg_store< Context, Args... > &store)
 
FMT_INLINE basic_format_args (const dynamic_format_arg_store< Context > &store)
 
 basic_format_args (const format_arg *args, int count)
 
format_arg get (int id) const
 
template<typename Char >
format_arg get (basic_string_view< Char > name) const
 
template<typename Char >
int get_id (basic_string_view< Char > name) const
 
int max_size () const
 

Private Member Functions

bool is_packed () const
 
bool has_named_args () const
 
detail::type type (int index) const
 
 basic_format_args (unsigned long long desc, const detail::value< Context > *values)
 
 basic_format_args (unsigned long long desc, const format_arg *args)
 

Private Attributes

unsigned long long desc_
 
union {
   const detail::value< Context > *   values_
 
   const format_arg *   args_
 
}; 
 

Detailed Description

template<typename Context>
class basic_format_args< Context >

\rst A view of a collection of formatting arguments. To avoid lifetime issues it should only be used as a parameter type in type-erased functions such as vformat::

void vlog(string_view format_str, format_args args); // OK format_args args = make_format_args(42); // Error: dangling reference \endrst

Member Typedef Documentation

◆ format_arg

template<typename Context >
using basic_format_args< Context >::format_arg = basic_format_arg<Context>

◆ size_type

template<typename Context >
using basic_format_args< Context >::size_type = int

Constructor & Destructor Documentation

◆ basic_format_args() [1/6]

template<typename Context >
basic_format_args< Context >::basic_format_args ( unsigned long long  desc,
const detail::value< Context > *  values 
)
inlineprivate

◆ basic_format_args() [2/6]

template<typename Context >
basic_format_args< Context >::basic_format_args ( unsigned long long  desc,
const format_arg args 
)
inlineprivate

◆ basic_format_args() [3/6]

template<typename Context >
basic_format_args< Context >::basic_format_args ( )
inline

◆ basic_format_args() [4/6]

template<typename Context >
template<typename... Args>
FMT_INLINE basic_format_args< Context >::basic_format_args ( const format_arg_store< Context, Args... > &  store)
inline

\rst Constructs a basic_format_args object from ~fmtformat_arg_store. \endrst

◆ basic_format_args() [5/6]

template<typename Context >
FMT_INLINE basic_format_args< Context >::basic_format_args ( const dynamic_format_arg_store< Context > &  store)
inline

\rst Constructs a basic_format_args object from ~fmtdynamic_format_arg_store. \endrst

◆ basic_format_args() [6/6]

template<typename Context >
basic_format_args< Context >::basic_format_args ( const format_arg args,
int  count 
)
inline

\rst Constructs a basic_format_args object from a dynamic set of arguments. \endrst

Member Function Documentation

◆ get() [1/2]

template<typename Context >
template<typename Char >
format_arg basic_format_args< Context >::get ( basic_string_view< Char >  name) const
inline

◆ get() [2/2]

template<typename Context >
format_arg basic_format_args< Context >::get ( int  id) const
inline

◆ get_id()

template<typename Context >
template<typename Char >
int basic_format_args< Context >::get_id ( basic_string_view< Char >  name) const
inline

◆ has_named_args()

template<typename Context >
bool basic_format_args< Context >::has_named_args ( ) const
inlineprivate

◆ is_packed()

template<typename Context >
bool basic_format_args< Context >::is_packed ( ) const
inlineprivate

◆ max_size()

template<typename Context >
int basic_format_args< Context >::max_size ( ) const
inline

◆ type()

template<typename Context >
detail::type basic_format_args< Context >::type ( int  index) const
inlineprivate

Member Data Documentation

◆ 

union { ... }

◆ args_

template<typename Context >
const format_arg* basic_format_args< Context >::args_

◆ desc_

template<typename Context >
unsigned long long basic_format_args< Context >::desc_
private

◆ values_

template<typename Context >
const detail::value<Context>* basic_format_args< Context >::values_

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