Classes | Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
absl::str_format_internal::FormatArgImpl Class Reference

#include <arg.h>

Classes

union  Data
 
struct  DecayType
 
struct  DecayType< T, typename std::enable_if< !str_format_internal::HasUserDefinedConvert< T >::value &&std::is_enum< T >::value >::type >
 
struct  Manager
 
struct  Manager< T, ByPointer >
 
struct  Manager< T, ByValue >
 
struct  Manager< T, ByVolatilePointer >
 
struct  storage_policy
 
struct  store_by_value
 

Public Member Functions

template<typename T >
 FormatArgImpl (const T &value)
 

Private Types

enum  { kInlinedSpace = 8 }
 
using Dispatcher = bool(*)(Data, ConversionSpec, void *out)
 
enum  StoragePolicy { ByPointer, ByVolatilePointer, ByValue }
 
using VoidPtr = str_format_internal::VoidPtr
 

Private Member Functions

template<typename T >
void Init (const T &value)
 

Static Private Member Functions

template<typename T >
static bool Dispatch (Data arg, ConversionSpec spec, void *out)
 
template<typename T >
static bool ToInt (Data arg, int *out, std::true_type, std::false_type)
 
template<typename T >
static bool ToInt (Data arg, int *out, std::false_type, std::true_type)
 
template<typename T >
static bool ToInt (Data, int *, std::false_type, std::false_type)
 
template<typename T >
static int ToIntVal (const T &val)
 

Private Attributes

Data data_
 
Dispatcher dispatcher_
 

Friends

struct str_format_internal::FormatArgImplFriend
 

Detailed Description

Definition at line 219 of file arg.h.

Member Typedef Documentation

◆ Dispatcher

Definition at line 231 of file arg.h.

◆ VoidPtr

Definition at line 223 of file arg.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
kInlinedSpace 

Definition at line 221 of file arg.h.

◆ StoragePolicy

Enumerator
ByPointer 
ByVolatilePointer 
ByValue 

Definition at line 241 of file arg.h.

Constructor & Destructor Documentation

◆ FormatArgImpl()

template<typename T >
absl::str_format_internal::FormatArgImpl::FormatArgImpl ( const T &  value)
inlineexplicit

Definition at line 279 of file arg.h.

Member Function Documentation

◆ Dispatch()

template<typename T >
static bool absl::str_format_internal::FormatArgImpl::Dispatch ( Data  arg,
ConversionSpec  spec,
void *  out 
)
inlinestaticprivate

Definition at line 373 of file arg.h.

◆ Init()

template<typename T >
void absl::str_format_internal::FormatArgImpl::Init ( const T &  value)
inlineprivate

Definition at line 332 of file arg.h.

◆ ToInt() [1/3]

template<typename T >
static bool absl::str_format_internal::FormatArgImpl::ToInt ( Data  arg,
int *  out,
std::true_type  ,
std::false_type   
)
inlinestaticprivate

Definition at line 353 of file arg.h.

◆ ToInt() [2/3]

template<typename T >
static bool absl::str_format_internal::FormatArgImpl::ToInt ( Data  arg,
int *  out,
std::false_type  ,
std::true_type   
)
inlinestaticprivate

Definition at line 360 of file arg.h.

◆ ToInt() [3/3]

template<typename T >
static bool absl::str_format_internal::FormatArgImpl::ToInt ( Data  ,
int *  ,
std::false_type  ,
std::false_type   
)
inlinestaticprivate

Definition at line 368 of file arg.h.

◆ ToIntVal()

template<typename T >
static int absl::str_format_internal::FormatArgImpl::ToIntVal ( const T &  val)
inlinestaticprivate

Definition at line 338 of file arg.h.

Friends And Related Function Documentation

◆ str_format_internal::FormatArgImplFriend

Definition at line 288 of file arg.h.

Member Data Documentation

◆ data_

Data absl::str_format_internal::FormatArgImpl::data_
private

Definition at line 385 of file arg.h.

◆ dispatcher_

Dispatcher absl::str_format_internal::FormatArgImpl::dispatcher_
private

Definition at line 386 of file arg.h.


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


abseil_cpp
Author(s):
autogenerated on Mon Feb 28 2022 21:31:23