10#if !defined (HPP_ALIB_LANG_FORMAT_FORMATTER_PYTHONSTYLE)
14#if !defined (_GLIBCXX_CMATH) && !defined (_CMATH_)
24 #pragma clang diagnostic push
25 #pragma clang diagnostic ignored "-Wreserved-id-macro"
29 #pragma clang diagnostic pop
91 while( (formatter= formatter->Next.get()) !=
nullptr );
95 while ( argIdx < args.
Size() - 1 )
98 const Box& actual= args[
static_cast<size_t>(argIdx++)];
99 if( actual.
IsType<
void>() )
115 while( ( qtyConsume= formatter->format( target, formatString, args,
static_cast<int>(argIdx ) ) )
117 && (formatter= formatter->Next.get()) !=
nullptr )
121 if( qtyConsume == 0 )
123 target.template _<false>( formatString );
126 argIdx+=
static_cast<size_t>( qtyConsume );
130 if ( argIdx==args.
Size() - 1 && !args.back().IsType<
void>() )
131 target.template _<false>( args.back() );
144 Next->CloneSettings( *reference.
Next );
const TUnboxable Unbox() const
constexpr bool IsEmpty() const
ALIB_API void Acquire(const NCString &dbgFile, int dbgLine, const NCString &dbgFunc)
ALIB_API void Release()
defined(ALIB_DOX)
#define ALIB_DBG_PREVENT_RECURSIVE_METHOD_CALLS
#define ALIB_REL_DBG(releaseCode,...)
platform_specific integer
void DbgCheckSingleThreaded()
std::shared_ptr< lang::format::Formatter > SPFormatter
characters::character character
Type alias in namespace alib.