9#ifndef INCLUDED_BSLFMT_FORMAT_STRING
10#define INCLUDED_BSLFMT_FORMAT_STRING
125#include <bslscm_version.h>
144template <
class t_CHAR>
145struct Format_String_TestUpdater;
152#if defined(BSLS_LIBRARYFEATURES_HAS_CPP20_BASELINE_LIBRARY)
159template <
class t_CHAR,
class... t_ARGS>
166 template <
class t_INNER_CHAR>
176 template <
class t_STR,
188#elif defined(BSLS_COMPILERFEATURES_SUPPORT_ALIAS_TEMPLATES) && \
189 defined(BSLS_COMPILERFEATURES_SUPPORT_VARIADIC_TEMPLATES)
191template <
class t_CHAR,
class... t_ARGS>
198 template <
class t_INNER_CHAR>
215template <
class t_CHAR>
216class basic_format_string {
222 template <
class t_INNER_CHAR>
241#if defined(BSLS_COMPILERFEATURES_SUPPORT_ALIAS_TEMPLATES) && \
242 defined(BSLS_COMPILERFEATURES_SUPPORT_VARIADIC_TEMPLATES)
244template <
class... t_ARGS>
246 basic_format_string<char, bsl::type_identity_t<t_ARGS>...>;
248template <
class... t_ARGS>
250 basic_format_string<wchar_t, bsl::type_identity_t<t_ARGS>...>;
266template <
class t_CHAR>
271 template <
class t_FORMATSTRING>
272 static void update(t_FORMATSTRING *out,
const t_CHAR *value);
276 template <
class t_FORMATSTRING>
277 static void update(t_FORMATSTRING *out,
289#if defined(BSLS_LIBRARYFEATURES_HAS_CPP20_BASELINE_LIBRARY)
292template <
class t_CHAR,
class... t_ARGS>
293template <
class t_STR,
class>
301template <
class t_CHAR,
class... t_ARGS>
306 return d_formatString;
309#elif defined(BSLS_COMPILERFEATURES_SUPPORT_ALIAS_TEMPLATES) && \
310 defined(BSLS_COMPILERFEATURES_SUPPORT_VARIADIC_TEMPLATES)
312template <
class t_CHAR,
class... t_ARGS>
316 d_formatString = str;
319template <
class t_CHAR,
class... t_ARGS>
324 return d_formatString;
329template <
class t_CHAR>
333 d_formatString = str;
336template <
class t_CHAR>
341 return d_formatString;
350template <
class t_CHAR>
351template <
class t_FORMATSTRING>
355 out->d_formatString = value;
358template <
class t_CHAR>
359template <
class t_FORMATSTRING>
364 out->d_formatString = value;
Definition bslstl_stringview.h:471
#define BSLS_IDENT(str)
BSLS_IDENT() - insert string into .comment binary segment (if supported)
Definition bsls_ident.h:238
#define BSLS_KEYWORD_CONSTEXPR_CPP14
Definition bsls_keyword.h:631
#define BSLS_KEYWORD_CONSTEXPR
Definition bsls_keyword.h:624
Definition bslfmt_enablestreamedformatter.h:130
basic_format_string< wchar_t > wformat_string
Definition bslfmt_format_string.h:256
basic_format_string< char > format_string
Definition bslfmt_format_string.h:255
Definition bslmf_enableif.h:530
Definition bslmf_isconvertible.h:875