11#ifndef INCLUDED_BSLFMT_FORMAT_IMP_CPP03
12#define INCLUDED_BSLFMT_FORMAT_IMP_CPP03
63#ifdef COMPILING_BSLFMT_FORMAT_IMP_H
65#if defined(BSLS_COMPILERFEATURES_SUPPORT_ALIAS_TEMPLATES) && \
66 defined(BSLS_COMPILERFEATURES_SUPPORT_VARIADIC_TEMPLATES)
67# define BSLFMT_FORMAT_STRING_PARAMETER bslfmt::format_string<t_ARGS...>
68# define BSLFMT_FORMAT_WSTRING_PARAMETER bslfmt::wformat_string<t_ARGS...>
72# define BSLFMT_FORMAT_STRING_PARAMETER bslfmt::format_string
73# define BSLFMT_FORMAT_WSTRING_PARAMETER bslfmt::wformat_string
91template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
92class Format_Imp_TruncatingIterator {
95 typedef typename bsl::iterator_traits<t_ITERATOR>::difference_type DT;
98 t_ITERATOR d_iterator;
147 t_DIFF_TYPE
count()
const;
159#if defined(BSLS_LIBRARYFEATURES_HAS_CPP20_FORMAT)
164using std::format_to_n_result;
172template <
class t_OUT>
173struct format_to_n_result {
177 typename bsl::iterator_traits<t_OUT>::difference_type
190template <
class t_OUT,
class t_CHAR>
191struct Format_Imp_Visitor {
194 basic_format_parse_context<t_CHAR> *d_parseContext_p;
196 basic_format_context<t_OUT, t_CHAR> *d_formatContext_p;
201 typename basic_format_arg<basic_format_context<t_OUT, t_CHAR> >::handle
210 basic_format_context<t_OUT, t_CHAR>& fc);
228 void operator()(
unsigned long long value)
const;
253template <
class t_CHAR>
254struct Format_Imp_Processor {
261 template <
class t_OUT>
262 static t_OUT processImp(
265 const basic_format_args<basic_format_context<t_OUT, t_CHAR> >& args);
275 static Format_ContextOutputIteratorRef<t_CHAR>
276 process(Format_ContextOutputIteratorRef<t_CHAR> out,
278 const basic_format_args<
279 basic_format_context<Format_ContextOutputIteratorRef<t_CHAR>,
287 template <
class t_OUT,
class t_CONTEXT>
288 static t_OUT
process(t_OUT out,
290 const basic_format_args<t_CONTEXT>& args);
304template <
class t_OUT>
313template <
class t_OUT>
365#if BSLS_COMPILERFEATURES_SIMULATE_VARIADIC_TEMPLATES
368#ifndef BSLFMT_FORMAT_IMP_VARIADIC_LIMIT
369#define BSLFMT_FORMAT_IMP_VARIADIC_LIMIT 10
371#ifndef BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A
372#define BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A BSLFMT_FORMAT_IMP_VARIADIC_LIMIT
374#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
375template <
class t_OUT>
384#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
385template <
class t_OUT,
class t_ARGS_01>
392 const t_ARGS_01& args_01);
395#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
396template <
class t_OUT,
class t_ARGS_01,
404 const t_ARGS_01& args_01,
405 const t_ARGS_02& args_02);
408#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
409template <
class t_OUT,
class t_ARGS_01,
418 const t_ARGS_01& args_01,
419 const t_ARGS_02& args_02,
420 const t_ARGS_03& args_03);
423#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
424template <
class t_OUT,
class t_ARGS_01,
434 const t_ARGS_01& args_01,
435 const t_ARGS_02& args_02,
436 const t_ARGS_03& args_03,
437 const t_ARGS_04& args_04);
440#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
441template <
class t_OUT,
class t_ARGS_01,
452 const t_ARGS_01& args_01,
453 const t_ARGS_02& args_02,
454 const t_ARGS_03& args_03,
455 const t_ARGS_04& args_04,
456 const t_ARGS_05& args_05);
459#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
460template <
class t_OUT,
class t_ARGS_01,
472 const t_ARGS_01& args_01,
473 const t_ARGS_02& args_02,
474 const t_ARGS_03& args_03,
475 const t_ARGS_04& args_04,
476 const t_ARGS_05& args_05,
477 const t_ARGS_06& args_06);
480#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
481template <
class t_OUT,
class t_ARGS_01,
494 const t_ARGS_01& args_01,
495 const t_ARGS_02& args_02,
496 const t_ARGS_03& args_03,
497 const t_ARGS_04& args_04,
498 const t_ARGS_05& args_05,
499 const t_ARGS_06& args_06,
500 const t_ARGS_07& args_07);
503#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
504template <
class t_OUT,
class t_ARGS_01,
518 const t_ARGS_01& args_01,
519 const t_ARGS_02& args_02,
520 const t_ARGS_03& args_03,
521 const t_ARGS_04& args_04,
522 const t_ARGS_05& args_05,
523 const t_ARGS_06& args_06,
524 const t_ARGS_07& args_07,
525 const t_ARGS_08& args_08);
528#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
529template <
class t_OUT,
class t_ARGS_01,
544 const t_ARGS_01& args_01,
545 const t_ARGS_02& args_02,
546 const t_ARGS_03& args_03,
547 const t_ARGS_04& args_04,
548 const t_ARGS_05& args_05,
549 const t_ARGS_06& args_06,
550 const t_ARGS_07& args_07,
551 const t_ARGS_08& args_08,
552 const t_ARGS_09& args_09);
555#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
556template <
class t_OUT,
class t_ARGS_01,
572 const t_ARGS_01& args_01,
573 const t_ARGS_02& args_02,
574 const t_ARGS_03& args_03,
575 const t_ARGS_04& args_04,
576 const t_ARGS_05& args_05,
577 const t_ARGS_06& args_06,
578 const t_ARGS_07& args_07,
579 const t_ARGS_08& args_08,
580 const t_ARGS_09& args_09,
581 const t_ARGS_10& args_10);
585#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
586template <
class t_OUT>
595#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
596template <
class t_OUT,
class t_ARGS_01>
603 const t_ARGS_01& args_01);
606#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
607template <
class t_OUT,
class t_ARGS_01,
615 const t_ARGS_01& args_01,
616 const t_ARGS_02& args_02);
619#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
620template <
class t_OUT,
class t_ARGS_01,
629 const t_ARGS_01& args_01,
630 const t_ARGS_02& args_02,
631 const t_ARGS_03& args_03);
634#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
635template <
class t_OUT,
class t_ARGS_01,
645 const t_ARGS_01& args_01,
646 const t_ARGS_02& args_02,
647 const t_ARGS_03& args_03,
648 const t_ARGS_04& args_04);
651#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
652template <
class t_OUT,
class t_ARGS_01,
663 const t_ARGS_01& args_01,
664 const t_ARGS_02& args_02,
665 const t_ARGS_03& args_03,
666 const t_ARGS_04& args_04,
667 const t_ARGS_05& args_05);
670#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
671template <
class t_OUT,
class t_ARGS_01,
683 const t_ARGS_01& args_01,
684 const t_ARGS_02& args_02,
685 const t_ARGS_03& args_03,
686 const t_ARGS_04& args_04,
687 const t_ARGS_05& args_05,
688 const t_ARGS_06& args_06);
691#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
692template <
class t_OUT,
class t_ARGS_01,
705 const t_ARGS_01& args_01,
706 const t_ARGS_02& args_02,
707 const t_ARGS_03& args_03,
708 const t_ARGS_04& args_04,
709 const t_ARGS_05& args_05,
710 const t_ARGS_06& args_06,
711 const t_ARGS_07& args_07);
714#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
715template <
class t_OUT,
class t_ARGS_01,
729 const t_ARGS_01& args_01,
730 const t_ARGS_02& args_02,
731 const t_ARGS_03& args_03,
732 const t_ARGS_04& args_04,
733 const t_ARGS_05& args_05,
734 const t_ARGS_06& args_06,
735 const t_ARGS_07& args_07,
736 const t_ARGS_08& args_08);
739#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
740template <
class t_OUT,
class t_ARGS_01,
755 const t_ARGS_01& args_01,
756 const t_ARGS_02& args_02,
757 const t_ARGS_03& args_03,
758 const t_ARGS_04& args_04,
759 const t_ARGS_05& args_05,
760 const t_ARGS_06& args_06,
761 const t_ARGS_07& args_07,
762 const t_ARGS_08& args_08,
763 const t_ARGS_09& args_09);
766#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
767template <
class t_OUT,
class t_ARGS_01,
783 const t_ARGS_01& args_01,
784 const t_ARGS_02& args_02,
785 const t_ARGS_03& args_03,
786 const t_ARGS_04& args_04,
787 const t_ARGS_05& args_05,
788 const t_ARGS_06& args_06,
789 const t_ARGS_07& args_07,
790 const t_ARGS_08& args_08,
791 const t_ARGS_09& args_09,
792 const t_ARGS_10& args_10);
796#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
802#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
803template <
class t_ARGS_01>
807 const t_ARGS_01& args_01);
810#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
811template <
class t_ARGS_01,
816 const t_ARGS_01& args_01,
817 const t_ARGS_02& args_02);
820#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
821template <
class t_ARGS_01,
827 const t_ARGS_01& args_01,
828 const t_ARGS_02& args_02,
829 const t_ARGS_03& args_03);
832#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
833template <
class t_ARGS_01,
840 const t_ARGS_01& args_01,
841 const t_ARGS_02& args_02,
842 const t_ARGS_03& args_03,
843 const t_ARGS_04& args_04);
846#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
847template <
class t_ARGS_01,
855 const t_ARGS_01& args_01,
856 const t_ARGS_02& args_02,
857 const t_ARGS_03& args_03,
858 const t_ARGS_04& args_04,
859 const t_ARGS_05& args_05);
862#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
863template <
class t_ARGS_01,
872 const t_ARGS_01& args_01,
873 const t_ARGS_02& args_02,
874 const t_ARGS_03& args_03,
875 const t_ARGS_04& args_04,
876 const t_ARGS_05& args_05,
877 const t_ARGS_06& args_06);
880#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
881template <
class t_ARGS_01,
891 const t_ARGS_01& args_01,
892 const t_ARGS_02& args_02,
893 const t_ARGS_03& args_03,
894 const t_ARGS_04& args_04,
895 const t_ARGS_05& args_05,
896 const t_ARGS_06& args_06,
897 const t_ARGS_07& args_07);
900#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
901template <
class t_ARGS_01,
912 const t_ARGS_01& args_01,
913 const t_ARGS_02& args_02,
914 const t_ARGS_03& args_03,
915 const t_ARGS_04& args_04,
916 const t_ARGS_05& args_05,
917 const t_ARGS_06& args_06,
918 const t_ARGS_07& args_07,
919 const t_ARGS_08& args_08);
922#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
923template <
class t_ARGS_01,
935 const t_ARGS_01& args_01,
936 const t_ARGS_02& args_02,
937 const t_ARGS_03& args_03,
938 const t_ARGS_04& args_04,
939 const t_ARGS_05& args_05,
940 const t_ARGS_06& args_06,
941 const t_ARGS_07& args_07,
942 const t_ARGS_08& args_08,
943 const t_ARGS_09& args_09);
946#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
947template <
class t_ARGS_01,
960 const t_ARGS_01& args_01,
961 const t_ARGS_02& args_02,
962 const t_ARGS_03& args_03,
963 const t_ARGS_04& args_04,
964 const t_ARGS_05& args_05,
965 const t_ARGS_06& args_06,
966 const t_ARGS_07& args_07,
967 const t_ARGS_08& args_08,
968 const t_ARGS_09& args_09,
969 const t_ARGS_10& args_10);
973#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
979#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
980template <
class t_ARGS_01>
984 const t_ARGS_01& args_01);
987#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
988template <
class t_ARGS_01,
993 const t_ARGS_01& args_01,
994 const t_ARGS_02& args_02);
997#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
998template <
class t_ARGS_01,
1004 const t_ARGS_01& args_01,
1005 const t_ARGS_02& args_02,
1006 const t_ARGS_03& args_03);
1009#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
1010template <
class t_ARGS_01,
1017 const t_ARGS_01& args_01,
1018 const t_ARGS_02& args_02,
1019 const t_ARGS_03& args_03,
1020 const t_ARGS_04& args_04);
1023#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
1024template <
class t_ARGS_01,
1032 const t_ARGS_01& args_01,
1033 const t_ARGS_02& args_02,
1034 const t_ARGS_03& args_03,
1035 const t_ARGS_04& args_04,
1036 const t_ARGS_05& args_05);
1039#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
1040template <
class t_ARGS_01,
1049 const t_ARGS_01& args_01,
1050 const t_ARGS_02& args_02,
1051 const t_ARGS_03& args_03,
1052 const t_ARGS_04& args_04,
1053 const t_ARGS_05& args_05,
1054 const t_ARGS_06& args_06);
1057#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
1058template <
class t_ARGS_01,
1068 const t_ARGS_01& args_01,
1069 const t_ARGS_02& args_02,
1070 const t_ARGS_03& args_03,
1071 const t_ARGS_04& args_04,
1072 const t_ARGS_05& args_05,
1073 const t_ARGS_06& args_06,
1074 const t_ARGS_07& args_07);
1077#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
1078template <
class t_ARGS_01,
1089 const t_ARGS_01& args_01,
1090 const t_ARGS_02& args_02,
1091 const t_ARGS_03& args_03,
1092 const t_ARGS_04& args_04,
1093 const t_ARGS_05& args_05,
1094 const t_ARGS_06& args_06,
1095 const t_ARGS_07& args_07,
1096 const t_ARGS_08& args_08);
1099#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
1100template <
class t_ARGS_01,
1112 const t_ARGS_01& args_01,
1113 const t_ARGS_02& args_02,
1114 const t_ARGS_03& args_03,
1115 const t_ARGS_04& args_04,
1116 const t_ARGS_05& args_05,
1117 const t_ARGS_06& args_06,
1118 const t_ARGS_07& args_07,
1119 const t_ARGS_08& args_08,
1120 const t_ARGS_09& args_09);
1123#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
1124template <
class t_ARGS_01,
1137 const t_ARGS_01& args_01,
1138 const t_ARGS_02& args_02,
1139 const t_ARGS_03& args_03,
1140 const t_ARGS_04& args_04,
1141 const t_ARGS_05& args_05,
1142 const t_ARGS_06& args_06,
1143 const t_ARGS_07& args_07,
1144 const t_ARGS_08& args_08,
1145 const t_ARGS_09& args_09,
1146 const t_ARGS_10& args_10);
1150#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
1155#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
1156template <
class t_ARGS_01>
1159 const t_ARGS_01& args_01);
1162#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
1163template <
class t_ARGS_01,
1167 const t_ARGS_01& args_01,
1168 const t_ARGS_02& args_02);
1171#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
1172template <
class t_ARGS_01,
1177 const t_ARGS_01& args_01,
1178 const t_ARGS_02& args_02,
1179 const t_ARGS_03& args_03);
1182#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
1183template <
class t_ARGS_01,
1189 const t_ARGS_01& args_01,
1190 const t_ARGS_02& args_02,
1191 const t_ARGS_03& args_03,
1192 const t_ARGS_04& args_04);
1195#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
1196template <
class t_ARGS_01,
1203 const t_ARGS_01& args_01,
1204 const t_ARGS_02& args_02,
1205 const t_ARGS_03& args_03,
1206 const t_ARGS_04& args_04,
1207 const t_ARGS_05& args_05);
1210#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
1211template <
class t_ARGS_01,
1219 const t_ARGS_01& args_01,
1220 const t_ARGS_02& args_02,
1221 const t_ARGS_03& args_03,
1222 const t_ARGS_04& args_04,
1223 const t_ARGS_05& args_05,
1224 const t_ARGS_06& args_06);
1227#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
1228template <
class t_ARGS_01,
1237 const t_ARGS_01& args_01,
1238 const t_ARGS_02& args_02,
1239 const t_ARGS_03& args_03,
1240 const t_ARGS_04& args_04,
1241 const t_ARGS_05& args_05,
1242 const t_ARGS_06& args_06,
1243 const t_ARGS_07& args_07);
1246#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
1247template <
class t_ARGS_01,
1257 const t_ARGS_01& args_01,
1258 const t_ARGS_02& args_02,
1259 const t_ARGS_03& args_03,
1260 const t_ARGS_04& args_04,
1261 const t_ARGS_05& args_05,
1262 const t_ARGS_06& args_06,
1263 const t_ARGS_07& args_07,
1264 const t_ARGS_08& args_08);
1267#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
1268template <
class t_ARGS_01,
1279 const t_ARGS_01& args_01,
1280 const t_ARGS_02& args_02,
1281 const t_ARGS_03& args_03,
1282 const t_ARGS_04& args_04,
1283 const t_ARGS_05& args_05,
1284 const t_ARGS_06& args_06,
1285 const t_ARGS_07& args_07,
1286 const t_ARGS_08& args_08,
1287 const t_ARGS_09& args_09);
1290#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
1291template <
class t_ARGS_01,
1303 const t_ARGS_01& args_01,
1304 const t_ARGS_02& args_02,
1305 const t_ARGS_03& args_03,
1306 const t_ARGS_04& args_04,
1307 const t_ARGS_05& args_05,
1308 const t_ARGS_06& args_06,
1309 const t_ARGS_07& args_07,
1310 const t_ARGS_08& args_08,
1311 const t_ARGS_09& args_09,
1312 const t_ARGS_10& args_10);
1316#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
1321#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
1322template <
class t_ARGS_01>
1325 const t_ARGS_01& args_01);
1328#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
1329template <
class t_ARGS_01,
1333 const t_ARGS_01& args_01,
1334 const t_ARGS_02& args_02);
1337#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
1338template <
class t_ARGS_01,
1343 const t_ARGS_01& args_01,
1344 const t_ARGS_02& args_02,
1345 const t_ARGS_03& args_03);
1348#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
1349template <
class t_ARGS_01,
1355 const t_ARGS_01& args_01,
1356 const t_ARGS_02& args_02,
1357 const t_ARGS_03& args_03,
1358 const t_ARGS_04& args_04);
1361#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
1362template <
class t_ARGS_01,
1369 const t_ARGS_01& args_01,
1370 const t_ARGS_02& args_02,
1371 const t_ARGS_03& args_03,
1372 const t_ARGS_04& args_04,
1373 const t_ARGS_05& args_05);
1376#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
1377template <
class t_ARGS_01,
1385 const t_ARGS_01& args_01,
1386 const t_ARGS_02& args_02,
1387 const t_ARGS_03& args_03,
1388 const t_ARGS_04& args_04,
1389 const t_ARGS_05& args_05,
1390 const t_ARGS_06& args_06);
1393#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
1394template <
class t_ARGS_01,
1403 const t_ARGS_01& args_01,
1404 const t_ARGS_02& args_02,
1405 const t_ARGS_03& args_03,
1406 const t_ARGS_04& args_04,
1407 const t_ARGS_05& args_05,
1408 const t_ARGS_06& args_06,
1409 const t_ARGS_07& args_07);
1412#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
1413template <
class t_ARGS_01,
1423 const t_ARGS_01& args_01,
1424 const t_ARGS_02& args_02,
1425 const t_ARGS_03& args_03,
1426 const t_ARGS_04& args_04,
1427 const t_ARGS_05& args_05,
1428 const t_ARGS_06& args_06,
1429 const t_ARGS_07& args_07,
1430 const t_ARGS_08& args_08);
1433#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
1434template <
class t_ARGS_01,
1445 const t_ARGS_01& args_01,
1446 const t_ARGS_02& args_02,
1447 const t_ARGS_03& args_03,
1448 const t_ARGS_04& args_04,
1449 const t_ARGS_05& args_05,
1450 const t_ARGS_06& args_06,
1451 const t_ARGS_07& args_07,
1452 const t_ARGS_08& args_08,
1453 const t_ARGS_09& args_09);
1456#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
1457template <
class t_ARGS_01,
1469 const t_ARGS_01& args_01,
1470 const t_ARGS_02& args_02,
1471 const t_ARGS_03& args_03,
1472 const t_ARGS_04& args_04,
1473 const t_ARGS_05& args_05,
1474 const t_ARGS_06& args_06,
1475 const t_ARGS_07& args_07,
1476 const t_ARGS_08& args_08,
1477 const t_ARGS_09& args_09,
1478 const t_ARGS_10& args_10);
1482#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
1488#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
1489template <
class t_ARGS_01>
1493 const t_ARGS_01& args_01);
1496#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
1497template <
class t_ARGS_01,
1502 const t_ARGS_01& args_01,
1503 const t_ARGS_02& args_02);
1506#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
1507template <
class t_ARGS_01,
1513 const t_ARGS_01& args_01,
1514 const t_ARGS_02& args_02,
1515 const t_ARGS_03& args_03);
1518#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
1519template <
class t_ARGS_01,
1526 const t_ARGS_01& args_01,
1527 const t_ARGS_02& args_02,
1528 const t_ARGS_03& args_03,
1529 const t_ARGS_04& args_04);
1532#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
1533template <
class t_ARGS_01,
1541 const t_ARGS_01& args_01,
1542 const t_ARGS_02& args_02,
1543 const t_ARGS_03& args_03,
1544 const t_ARGS_04& args_04,
1545 const t_ARGS_05& args_05);
1548#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
1549template <
class t_ARGS_01,
1558 const t_ARGS_01& args_01,
1559 const t_ARGS_02& args_02,
1560 const t_ARGS_03& args_03,
1561 const t_ARGS_04& args_04,
1562 const t_ARGS_05& args_05,
1563 const t_ARGS_06& args_06);
1566#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
1567template <
class t_ARGS_01,
1577 const t_ARGS_01& args_01,
1578 const t_ARGS_02& args_02,
1579 const t_ARGS_03& args_03,
1580 const t_ARGS_04& args_04,
1581 const t_ARGS_05& args_05,
1582 const t_ARGS_06& args_06,
1583 const t_ARGS_07& args_07);
1586#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
1587template <
class t_ARGS_01,
1598 const t_ARGS_01& args_01,
1599 const t_ARGS_02& args_02,
1600 const t_ARGS_03& args_03,
1601 const t_ARGS_04& args_04,
1602 const t_ARGS_05& args_05,
1603 const t_ARGS_06& args_06,
1604 const t_ARGS_07& args_07,
1605 const t_ARGS_08& args_08);
1608#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
1609template <
class t_ARGS_01,
1621 const t_ARGS_01& args_01,
1622 const t_ARGS_02& args_02,
1623 const t_ARGS_03& args_03,
1624 const t_ARGS_04& args_04,
1625 const t_ARGS_05& args_05,
1626 const t_ARGS_06& args_06,
1627 const t_ARGS_07& args_07,
1628 const t_ARGS_08& args_08,
1629 const t_ARGS_09& args_09);
1632#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
1633template <
class t_ARGS_01,
1646 const t_ARGS_01& args_01,
1647 const t_ARGS_02& args_02,
1648 const t_ARGS_03& args_03,
1649 const t_ARGS_04& args_04,
1650 const t_ARGS_05& args_05,
1651 const t_ARGS_06& args_06,
1652 const t_ARGS_07& args_07,
1653 const t_ARGS_08& args_08,
1654 const t_ARGS_09& args_09,
1655 const t_ARGS_10& args_10);
1659#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
1665#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
1666template <
class t_ARGS_01>
1670 const t_ARGS_01& args_01);
1673#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
1674template <
class t_ARGS_01,
1679 const t_ARGS_01& args_01,
1680 const t_ARGS_02& args_02);
1683#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
1684template <
class t_ARGS_01,
1690 const t_ARGS_01& args_01,
1691 const t_ARGS_02& args_02,
1692 const t_ARGS_03& args_03);
1695#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
1696template <
class t_ARGS_01,
1703 const t_ARGS_01& args_01,
1704 const t_ARGS_02& args_02,
1705 const t_ARGS_03& args_03,
1706 const t_ARGS_04& args_04);
1709#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
1710template <
class t_ARGS_01,
1718 const t_ARGS_01& args_01,
1719 const t_ARGS_02& args_02,
1720 const t_ARGS_03& args_03,
1721 const t_ARGS_04& args_04,
1722 const t_ARGS_05& args_05);
1725#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
1726template <
class t_ARGS_01,
1735 const t_ARGS_01& args_01,
1736 const t_ARGS_02& args_02,
1737 const t_ARGS_03& args_03,
1738 const t_ARGS_04& args_04,
1739 const t_ARGS_05& args_05,
1740 const t_ARGS_06& args_06);
1743#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
1744template <
class t_ARGS_01,
1754 const t_ARGS_01& args_01,
1755 const t_ARGS_02& args_02,
1756 const t_ARGS_03& args_03,
1757 const t_ARGS_04& args_04,
1758 const t_ARGS_05& args_05,
1759 const t_ARGS_06& args_06,
1760 const t_ARGS_07& args_07);
1763#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
1764template <
class t_ARGS_01,
1775 const t_ARGS_01& args_01,
1776 const t_ARGS_02& args_02,
1777 const t_ARGS_03& args_03,
1778 const t_ARGS_04& args_04,
1779 const t_ARGS_05& args_05,
1780 const t_ARGS_06& args_06,
1781 const t_ARGS_07& args_07,
1782 const t_ARGS_08& args_08);
1785#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
1786template <
class t_ARGS_01,
1798 const t_ARGS_01& args_01,
1799 const t_ARGS_02& args_02,
1800 const t_ARGS_03& args_03,
1801 const t_ARGS_04& args_04,
1802 const t_ARGS_05& args_05,
1803 const t_ARGS_06& args_06,
1804 const t_ARGS_07& args_07,
1805 const t_ARGS_08& args_08,
1806 const t_ARGS_09& args_09);
1809#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
1810template <
class t_ARGS_01,
1823 const t_ARGS_01& args_01,
1824 const t_ARGS_02& args_02,
1825 const t_ARGS_03& args_03,
1826 const t_ARGS_04& args_04,
1827 const t_ARGS_05& args_05,
1828 const t_ARGS_06& args_06,
1829 const t_ARGS_07& args_07,
1830 const t_ARGS_08& args_08,
1831 const t_ARGS_09& args_09,
1832 const t_ARGS_10& args_10);
1836#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
1841#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
1842template <
class t_ARGS_01>
1845 const t_ARGS_01& args_01);
1848#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
1849template <
class t_ARGS_01,
1853 const t_ARGS_01& args_01,
1854 const t_ARGS_02& args_02);
1857#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
1858template <
class t_ARGS_01,
1863 const t_ARGS_01& args_01,
1864 const t_ARGS_02& args_02,
1865 const t_ARGS_03& args_03);
1868#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
1869template <
class t_ARGS_01,
1875 const t_ARGS_01& args_01,
1876 const t_ARGS_02& args_02,
1877 const t_ARGS_03& args_03,
1878 const t_ARGS_04& args_04);
1881#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
1882template <
class t_ARGS_01,
1889 const t_ARGS_01& args_01,
1890 const t_ARGS_02& args_02,
1891 const t_ARGS_03& args_03,
1892 const t_ARGS_04& args_04,
1893 const t_ARGS_05& args_05);
1896#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
1897template <
class t_ARGS_01,
1905 const t_ARGS_01& args_01,
1906 const t_ARGS_02& args_02,
1907 const t_ARGS_03& args_03,
1908 const t_ARGS_04& args_04,
1909 const t_ARGS_05& args_05,
1910 const t_ARGS_06& args_06);
1913#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
1914template <
class t_ARGS_01,
1923 const t_ARGS_01& args_01,
1924 const t_ARGS_02& args_02,
1925 const t_ARGS_03& args_03,
1926 const t_ARGS_04& args_04,
1927 const t_ARGS_05& args_05,
1928 const t_ARGS_06& args_06,
1929 const t_ARGS_07& args_07);
1932#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
1933template <
class t_ARGS_01,
1943 const t_ARGS_01& args_01,
1944 const t_ARGS_02& args_02,
1945 const t_ARGS_03& args_03,
1946 const t_ARGS_04& args_04,
1947 const t_ARGS_05& args_05,
1948 const t_ARGS_06& args_06,
1949 const t_ARGS_07& args_07,
1950 const t_ARGS_08& args_08);
1953#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
1954template <
class t_ARGS_01,
1965 const t_ARGS_01& args_01,
1966 const t_ARGS_02& args_02,
1967 const t_ARGS_03& args_03,
1968 const t_ARGS_04& args_04,
1969 const t_ARGS_05& args_05,
1970 const t_ARGS_06& args_06,
1971 const t_ARGS_07& args_07,
1972 const t_ARGS_08& args_08,
1973 const t_ARGS_09& args_09);
1976#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
1977template <
class t_ARGS_01,
1989 const t_ARGS_01& args_01,
1990 const t_ARGS_02& args_02,
1991 const t_ARGS_03& args_03,
1992 const t_ARGS_04& args_04,
1993 const t_ARGS_05& args_05,
1994 const t_ARGS_06& args_06,
1995 const t_ARGS_07& args_07,
1996 const t_ARGS_08& args_08,
1997 const t_ARGS_09& args_09,
1998 const t_ARGS_10& args_10);
2002#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
2007#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
2008template <
class t_ARGS_01>
2011 const t_ARGS_01& args_01);
2014#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
2015template <
class t_ARGS_01,
2019 const t_ARGS_01& args_01,
2020 const t_ARGS_02& args_02);
2023#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
2024template <
class t_ARGS_01,
2029 const t_ARGS_01& args_01,
2030 const t_ARGS_02& args_02,
2031 const t_ARGS_03& args_03);
2034#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
2035template <
class t_ARGS_01,
2041 const t_ARGS_01& args_01,
2042 const t_ARGS_02& args_02,
2043 const t_ARGS_03& args_03,
2044 const t_ARGS_04& args_04);
2047#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
2048template <
class t_ARGS_01,
2055 const t_ARGS_01& args_01,
2056 const t_ARGS_02& args_02,
2057 const t_ARGS_03& args_03,
2058 const t_ARGS_04& args_04,
2059 const t_ARGS_05& args_05);
2062#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
2063template <
class t_ARGS_01,
2071 const t_ARGS_01& args_01,
2072 const t_ARGS_02& args_02,
2073 const t_ARGS_03& args_03,
2074 const t_ARGS_04& args_04,
2075 const t_ARGS_05& args_05,
2076 const t_ARGS_06& args_06);
2079#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
2080template <
class t_ARGS_01,
2089 const t_ARGS_01& args_01,
2090 const t_ARGS_02& args_02,
2091 const t_ARGS_03& args_03,
2092 const t_ARGS_04& args_04,
2093 const t_ARGS_05& args_05,
2094 const t_ARGS_06& args_06,
2095 const t_ARGS_07& args_07);
2098#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
2099template <
class t_ARGS_01,
2109 const t_ARGS_01& args_01,
2110 const t_ARGS_02& args_02,
2111 const t_ARGS_03& args_03,
2112 const t_ARGS_04& args_04,
2113 const t_ARGS_05& args_05,
2114 const t_ARGS_06& args_06,
2115 const t_ARGS_07& args_07,
2116 const t_ARGS_08& args_08);
2119#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
2120template <
class t_ARGS_01,
2131 const t_ARGS_01& args_01,
2132 const t_ARGS_02& args_02,
2133 const t_ARGS_03& args_03,
2134 const t_ARGS_04& args_04,
2135 const t_ARGS_05& args_05,
2136 const t_ARGS_06& args_06,
2137 const t_ARGS_07& args_07,
2138 const t_ARGS_08& args_08,
2139 const t_ARGS_09& args_09);
2142#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
2143template <
class t_ARGS_01,
2155 const t_ARGS_01& args_01,
2156 const t_ARGS_02& args_02,
2157 const t_ARGS_03& args_03,
2158 const t_ARGS_04& args_04,
2159 const t_ARGS_05& args_05,
2160 const t_ARGS_06& args_06,
2161 const t_ARGS_07& args_07,
2162 const t_ARGS_08& args_08,
2163 const t_ARGS_09& args_09,
2164 const t_ARGS_10& args_10);
2168#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
2169template <
class t_OUT>
2171format_to_n_result<t_OUT>
2173 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2177#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
2178template <
class t_OUT,
class t_ARGS_01>
2180format_to_n_result<t_OUT>
2182 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2184 const t_ARGS_01& args_01);
2187#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
2188template <
class t_OUT,
class t_ARGS_01,
2191format_to_n_result<t_OUT>
2193 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2195 const t_ARGS_01& args_01,
2196 const t_ARGS_02& args_02);
2199#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
2200template <
class t_OUT,
class t_ARGS_01,
2204format_to_n_result<t_OUT>
2206 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2208 const t_ARGS_01& args_01,
2209 const t_ARGS_02& args_02,
2210 const t_ARGS_03& args_03);
2213#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
2214template <
class t_OUT,
class t_ARGS_01,
2219format_to_n_result<t_OUT>
2221 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2223 const t_ARGS_01& args_01,
2224 const t_ARGS_02& args_02,
2225 const t_ARGS_03& args_03,
2226 const t_ARGS_04& args_04);
2229#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
2230template <
class t_OUT,
class t_ARGS_01,
2236format_to_n_result<t_OUT>
2238 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2240 const t_ARGS_01& args_01,
2241 const t_ARGS_02& args_02,
2242 const t_ARGS_03& args_03,
2243 const t_ARGS_04& args_04,
2244 const t_ARGS_05& args_05);
2247#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
2248template <
class t_OUT,
class t_ARGS_01,
2255format_to_n_result<t_OUT>
2257 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2259 const t_ARGS_01& args_01,
2260 const t_ARGS_02& args_02,
2261 const t_ARGS_03& args_03,
2262 const t_ARGS_04& args_04,
2263 const t_ARGS_05& args_05,
2264 const t_ARGS_06& args_06);
2267#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
2268template <
class t_OUT,
class t_ARGS_01,
2276format_to_n_result<t_OUT>
2278 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2280 const t_ARGS_01& args_01,
2281 const t_ARGS_02& args_02,
2282 const t_ARGS_03& args_03,
2283 const t_ARGS_04& args_04,
2284 const t_ARGS_05& args_05,
2285 const t_ARGS_06& args_06,
2286 const t_ARGS_07& args_07);
2289#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
2290template <
class t_OUT,
class t_ARGS_01,
2299format_to_n_result<t_OUT>
2301 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2303 const t_ARGS_01& args_01,
2304 const t_ARGS_02& args_02,
2305 const t_ARGS_03& args_03,
2306 const t_ARGS_04& args_04,
2307 const t_ARGS_05& args_05,
2308 const t_ARGS_06& args_06,
2309 const t_ARGS_07& args_07,
2310 const t_ARGS_08& args_08);
2313#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
2314template <
class t_OUT,
class t_ARGS_01,
2324format_to_n_result<t_OUT>
2326 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2328 const t_ARGS_01& args_01,
2329 const t_ARGS_02& args_02,
2330 const t_ARGS_03& args_03,
2331 const t_ARGS_04& args_04,
2332 const t_ARGS_05& args_05,
2333 const t_ARGS_06& args_06,
2334 const t_ARGS_07& args_07,
2335 const t_ARGS_08& args_08,
2336 const t_ARGS_09& args_09);
2339#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
2340template <
class t_OUT,
class t_ARGS_01,
2351format_to_n_result<t_OUT>
2353 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2355 const t_ARGS_01& args_01,
2356 const t_ARGS_02& args_02,
2357 const t_ARGS_03& args_03,
2358 const t_ARGS_04& args_04,
2359 const t_ARGS_05& args_05,
2360 const t_ARGS_06& args_06,
2361 const t_ARGS_07& args_07,
2362 const t_ARGS_08& args_08,
2363 const t_ARGS_09& args_09,
2364 const t_ARGS_10& args_10);
2368#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 0
2369template <
class t_OUT>
2371format_to_n_result<t_OUT>
2373 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2377#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 1
2378template <
class t_OUT,
class t_ARGS_01>
2380format_to_n_result<t_OUT>
2382 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2384 const t_ARGS_01& args_01);
2387#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 2
2388template <
class t_OUT,
class t_ARGS_01,
2391format_to_n_result<t_OUT>
2393 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2395 const t_ARGS_01& args_01,
2396 const t_ARGS_02& args_02);
2399#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 3
2400template <
class t_OUT,
class t_ARGS_01,
2404format_to_n_result<t_OUT>
2406 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2408 const t_ARGS_01& args_01,
2409 const t_ARGS_02& args_02,
2410 const t_ARGS_03& args_03);
2413#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 4
2414template <
class t_OUT,
class t_ARGS_01,
2419format_to_n_result<t_OUT>
2421 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2423 const t_ARGS_01& args_01,
2424 const t_ARGS_02& args_02,
2425 const t_ARGS_03& args_03,
2426 const t_ARGS_04& args_04);
2429#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 5
2430template <
class t_OUT,
class t_ARGS_01,
2436format_to_n_result<t_OUT>
2438 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2440 const t_ARGS_01& args_01,
2441 const t_ARGS_02& args_02,
2442 const t_ARGS_03& args_03,
2443 const t_ARGS_04& args_04,
2444 const t_ARGS_05& args_05);
2447#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 6
2448template <
class t_OUT,
class t_ARGS_01,
2455format_to_n_result<t_OUT>
2457 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2459 const t_ARGS_01& args_01,
2460 const t_ARGS_02& args_02,
2461 const t_ARGS_03& args_03,
2462 const t_ARGS_04& args_04,
2463 const t_ARGS_05& args_05,
2464 const t_ARGS_06& args_06);
2467#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 7
2468template <
class t_OUT,
class t_ARGS_01,
2476format_to_n_result<t_OUT>
2478 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2480 const t_ARGS_01& args_01,
2481 const t_ARGS_02& args_02,
2482 const t_ARGS_03& args_03,
2483 const t_ARGS_04& args_04,
2484 const t_ARGS_05& args_05,
2485 const t_ARGS_06& args_06,
2486 const t_ARGS_07& args_07);
2489#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 8
2490template <
class t_OUT,
class t_ARGS_01,
2499format_to_n_result<t_OUT>
2501 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2503 const t_ARGS_01& args_01,
2504 const t_ARGS_02& args_02,
2505 const t_ARGS_03& args_03,
2506 const t_ARGS_04& args_04,
2507 const t_ARGS_05& args_05,
2508 const t_ARGS_06& args_06,
2509 const t_ARGS_07& args_07,
2510 const t_ARGS_08& args_08);
2513#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 9
2514template <
class t_OUT,
class t_ARGS_01,
2524format_to_n_result<t_OUT>
2526 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2528 const t_ARGS_01& args_01,
2529 const t_ARGS_02& args_02,
2530 const t_ARGS_03& args_03,
2531 const t_ARGS_04& args_04,
2532 const t_ARGS_05& args_05,
2533 const t_ARGS_06& args_06,
2534 const t_ARGS_07& args_07,
2535 const t_ARGS_08& args_08,
2536 const t_ARGS_09& args_09);
2539#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_A >= 10
2540template <
class t_OUT,
class t_ARGS_01,
2551format_to_n_result<t_OUT>
2553 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2555 const t_ARGS_01& args_01,
2556 const t_ARGS_02& args_02,
2557 const t_ARGS_03& args_03,
2558 const t_ARGS_04& args_04,
2559 const t_ARGS_05& args_05,
2560 const t_ARGS_06& args_06,
2561 const t_ARGS_07& args_07,
2562 const t_ARGS_08& args_08,
2563 const t_ARGS_09& args_09,
2564 const t_ARGS_10& args_10);
2570template <
class t_OUT,
class... t_ARGS>
2577 const t_ARGS&... args);
2579template <
class t_OUT,
class... t_ARGS>
2586 const t_ARGS&... args);
2588template <
class... t_ARGS>
2592 const t_ARGS&... args);
2594template <
class... t_ARGS>
2598 const t_ARGS&... args);
2600template <
class... t_ARGS>
2603 const t_ARGS&... args);
2605template <
class... t_ARGS>
2608 const t_ARGS&... args);
2610template <
class... t_ARGS>
2614 const t_ARGS&... args);
2616template <
class... t_ARGS>
2620 const t_ARGS&... args);
2622template <
class... t_ARGS>
2625 const t_ARGS&... args);
2627template <
class... t_ARGS>
2630 const t_ARGS&... args);
2632template <
class t_OUT,
class... t_ARGS>
2634format_to_n_result<t_OUT>
2636 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2638 const t_ARGS&... args);
2640template <
class t_OUT,
class... t_ARGS>
2642format_to_n_result<t_OUT>
2644 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
2646 const t_ARGS&... args);
2661template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
2664: d_iterator(iterator)
2671template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
2672Format_Imp_TruncatingIterator<t_ITERATOR, t_VALUE_TYPE, t_DIFF_TYPE>&
2673Format_Imp_TruncatingIterator<t_ITERATOR, t_VALUE_TYPE, t_DIFF_TYPE>::
2679template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
2680void Format_Imp_TruncatingIterator<t_ITERATOR, t_VALUE_TYPE, t_DIFF_TYPE>::
2681operator=(t_VALUE_TYPE x)
2683 if (d_count++ < d_limit) {
2692template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
2693Format_Imp_TruncatingIterator<t_ITERATOR, t_VALUE_TYPE, t_DIFF_TYPE>&
2694Format_Imp_TruncatingIterator<t_ITERATOR, t_VALUE_TYPE, t_DIFF_TYPE>::
2701template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
2703Format_Imp_TruncatingIterator<t_ITERATOR, t_VALUE_TYPE, t_DIFF_TYPE>::count()
2709template <
class t_ITERATOR,
class t_VALUE_TYPE,
class t_DIFF_TYPE>
2710t_ITERATOR Format_Imp_TruncatingIterator<t_ITERATOR,
2712 t_DIFF_TYPE>::underlying()
const
2723template <
class t_OUT,
class t_CHAR>
2724Format_Imp_Visitor<t_OUT, t_CHAR>::Format_Imp_Visitor(
2725 basic_format_parse_context<t_CHAR>& pc,
2726 basic_format_context<t_OUT, t_CHAR>& fc)
2727: d_parseContext_p(&pc)
2728, d_formatContext_p(&fc)
2734template <
class t_OUT,
class t_CHAR>
2735void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
bsl::monostate)
const
2738 "This call should be impossible - arg uninitialized");
2740 format_error(
"This call should be impossible - arg uninitialized"));
2743template <
class t_OUT,
class t_CHAR>
2744void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
bool value)
const
2747 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2749 *d_formatContext_p));
2752template <
class t_OUT,
class t_CHAR>
2753void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(t_CHAR value)
const
2756 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2758 *d_formatContext_p));
2761template <
class t_OUT,
class t_CHAR>
2762void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
unsigned value)
const
2765 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2767 *d_formatContext_p));
2770template <
class t_OUT,
class t_CHAR>
2771void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
long long value)
const
2774 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2776 *d_formatContext_p));
2779template <
class t_OUT,
class t_CHAR>
2780void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
2781 unsigned long long value)
const
2784 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2786 *d_formatContext_p));
2789template <
class t_OUT,
class t_CHAR>
2790void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
float value)
const
2793 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2795 *d_formatContext_p));
2798template <
class t_OUT,
class t_CHAR>
2799void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
double value)
const
2802 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2804 *d_formatContext_p));
2807template <
class t_OUT,
class t_CHAR>
2808void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
long double value)
const
2811 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2813 *d_formatContext_p));
2816template <
class t_OUT,
class t_CHAR>
2817void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
const t_CHAR *value)
const
2820 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2822 *d_formatContext_p));
2825template <
class t_OUT,
class t_CHAR>
2826void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
const void *value)
const
2829 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2831 *d_formatContext_p));
2834template <
class t_OUT,
class t_CHAR>
2835void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
int value)
const
2838 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2840 *d_formatContext_p));
2843template <
class t_OUT,
class t_CHAR>
2844void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
2848 d_parseContext_p->advance_to(f.parse(*d_parseContext_p));
2850 *d_formatContext_p));
2853template <
class t_OUT,
class t_CHAR>
2854void Format_Imp_Visitor<t_OUT, t_CHAR>::operator()(
const handle& h)
const
2856 h.format(*d_parseContext_p, *d_formatContext_p);
2863template <
class t_CHAR>
2864template <
class t_OUT>
2865t_OUT Format_Imp_Processor<t_CHAR>::processImp(
2868 const basic_format_args<basic_format_context<t_OUT, t_CHAR> >& args)
2871 const size_t argSize = Format_ArgsUtil::formatArgsSize(args);
2873 basic_format_parse_context<t_CHAR> pc(fmtStr, argSize);
2874 basic_format_context<t_OUT, t_CHAR> fc(
2875 Format_ContextFactory::construct(out, args));
2876 Format_Imp_Visitor<t_OUT, t_CHAR> visitor(pc, fc);
2880 while (it != pc.end()) {
2883 if (it == pc.end()) {
2886 else if (*it ==
'{') {
2896 if (*it >=
'0' && *it <=
'9') {
2899 while (it != pc.end() && *it >=
'0' && *it <=
'9') {
2900 id = 10 *
id + (*it -
'0');
2902 if (
id >= argSize) {
2903 BSLS_THROW(format_error(
"arg id too large"));
2906 if (it == pc.end()) {
2910 if (
id ==
size_t(-1)) {
2911 id = pc.next_arg_id();
2914 pc.check_arg_id(
id);
2922 else if (*it !=
'}') {
2923 BSLS_THROW(format_error(
"Separator ':' missing"));
2929 if (it != pc.end()) {
2931 BSLS_THROW(format_error(
"parsing terminated before }"));
2938 else if (*it ==
'}') {
2941 if (it == pc.end() || *it !=
'}') {
2942 BSLS_THROW(format_error(
"} must be escaped"));
2962template <
class t_CHAR>
2963Format_ContextOutputIteratorRef<t_CHAR> Format_Imp_Processor<t_CHAR>::process(
2964 Format_ContextOutputIteratorRef<t_CHAR> out,
2966 const basic_format_args<
2967 basic_format_context<Format_ContextOutputIteratorRef<t_CHAR>,
2970 processImp(out, fmtStr, args);
2974template <
class t_CHAR>
2975template <
class t_OUT,
class t_CONTEXT>
2976t_OUT Format_Imp_Processor<t_CHAR>::process(
2979 const basic_format_args<t_CONTEXT>& args)
2981 Format_ContextOutputIteratorImpl<t_CHAR, t_OUT> wrappedOut(out);
2982 Format_ContextOutputIteratorRef<t_CHAR> wrappedOutRef(&wrappedOut);
2983 processImp(wrappedOutRef, fmtStr, args);
2989template <
class t_OUT>
2993 return Format_Imp_Processor<char>::process(out, fmtStr, args);
2996template <
class t_OUT>
3000 return Format_Imp_Processor<wchar_t>::process(out, fmtStr, args);
3006 vformat_to(bsl::back_inserter(*out), fmtStr, args);
3012 vformat_to(bsl::back_inserter(*out), fmtStr, args);
3051#if BSLS_COMPILERFEATURES_SIMULATE_VARIADIC_TEMPLATES
3054#ifndef BSLFMT_FORMAT_IMP_VARIADIC_LIMIT
3055#define BSLFMT_FORMAT_IMP_VARIADIC_LIMIT 10
3057#ifndef BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B
3058#define BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B BSLFMT_FORMAT_IMP_VARIADIC_LIMIT
3060#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
3061template <
class t_OUT>
3072#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
3073template <
class t_OUT,
class t_ARGS_01>
3079 const t_ARGS_01& args_01)
3085#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
3086template <
class t_OUT,
class t_ARGS_01,
3093 const t_ARGS_01& args_01,
3094 const t_ARGS_02& args_02)
3101#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
3102template <
class t_OUT,
class t_ARGS_01,
3110 const t_ARGS_01& args_01,
3111 const t_ARGS_02& args_02,
3112 const t_ARGS_03& args_03)
3120#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
3121template <
class t_OUT,
class t_ARGS_01,
3130 const t_ARGS_01& args_01,
3131 const t_ARGS_02& args_02,
3132 const t_ARGS_03& args_03,
3133 const t_ARGS_04& args_04)
3142#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
3143template <
class t_OUT,
class t_ARGS_01,
3153 const t_ARGS_01& args_01,
3154 const t_ARGS_02& args_02,
3155 const t_ARGS_03& args_03,
3156 const t_ARGS_04& args_04,
3157 const t_ARGS_05& args_05)
3167#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
3168template <
class t_OUT,
class t_ARGS_01,
3179 const t_ARGS_01& args_01,
3180 const t_ARGS_02& args_02,
3181 const t_ARGS_03& args_03,
3182 const t_ARGS_04& args_04,
3183 const t_ARGS_05& args_05,
3184 const t_ARGS_06& args_06)
3195#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
3196template <
class t_OUT,
class t_ARGS_01,
3208 const t_ARGS_01& args_01,
3209 const t_ARGS_02& args_02,
3210 const t_ARGS_03& args_03,
3211 const t_ARGS_04& args_04,
3212 const t_ARGS_05& args_05,
3213 const t_ARGS_06& args_06,
3214 const t_ARGS_07& args_07)
3226#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
3227template <
class t_OUT,
class t_ARGS_01,
3240 const t_ARGS_01& args_01,
3241 const t_ARGS_02& args_02,
3242 const t_ARGS_03& args_03,
3243 const t_ARGS_04& args_04,
3244 const t_ARGS_05& args_05,
3245 const t_ARGS_06& args_06,
3246 const t_ARGS_07& args_07,
3247 const t_ARGS_08& args_08)
3260#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
3261template <
class t_OUT,
class t_ARGS_01,
3275 const t_ARGS_01& args_01,
3276 const t_ARGS_02& args_02,
3277 const t_ARGS_03& args_03,
3278 const t_ARGS_04& args_04,
3279 const t_ARGS_05& args_05,
3280 const t_ARGS_06& args_06,
3281 const t_ARGS_07& args_07,
3282 const t_ARGS_08& args_08,
3283 const t_ARGS_09& args_09)
3297#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
3298template <
class t_OUT,
class t_ARGS_01,
3313 const t_ARGS_01& args_01,
3314 const t_ARGS_02& args_02,
3315 const t_ARGS_03& args_03,
3316 const t_ARGS_04& args_04,
3317 const t_ARGS_05& args_05,
3318 const t_ARGS_06& args_06,
3319 const t_ARGS_07& args_07,
3320 const t_ARGS_08& args_08,
3321 const t_ARGS_09& args_09,
3322 const t_ARGS_10& args_10)
3338#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
3339template <
class t_OUT>
3350#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
3351template <
class t_OUT,
class t_ARGS_01>
3357 const t_ARGS_01& args_01)
3363#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
3364template <
class t_OUT,
class t_ARGS_01,
3371 const t_ARGS_01& args_01,
3372 const t_ARGS_02& args_02)
3379#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
3380template <
class t_OUT,
class t_ARGS_01,
3388 const t_ARGS_01& args_01,
3389 const t_ARGS_02& args_02,
3390 const t_ARGS_03& args_03)
3398#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
3399template <
class t_OUT,
class t_ARGS_01,
3408 const t_ARGS_01& args_01,
3409 const t_ARGS_02& args_02,
3410 const t_ARGS_03& args_03,
3411 const t_ARGS_04& args_04)
3420#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
3421template <
class t_OUT,
class t_ARGS_01,
3431 const t_ARGS_01& args_01,
3432 const t_ARGS_02& args_02,
3433 const t_ARGS_03& args_03,
3434 const t_ARGS_04& args_04,
3435 const t_ARGS_05& args_05)
3445#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
3446template <
class t_OUT,
class t_ARGS_01,
3457 const t_ARGS_01& args_01,
3458 const t_ARGS_02& args_02,
3459 const t_ARGS_03& args_03,
3460 const t_ARGS_04& args_04,
3461 const t_ARGS_05& args_05,
3462 const t_ARGS_06& args_06)
3473#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
3474template <
class t_OUT,
class t_ARGS_01,
3486 const t_ARGS_01& args_01,
3487 const t_ARGS_02& args_02,
3488 const t_ARGS_03& args_03,
3489 const t_ARGS_04& args_04,
3490 const t_ARGS_05& args_05,
3491 const t_ARGS_06& args_06,
3492 const t_ARGS_07& args_07)
3504#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
3505template <
class t_OUT,
class t_ARGS_01,
3518 const t_ARGS_01& args_01,
3519 const t_ARGS_02& args_02,
3520 const t_ARGS_03& args_03,
3521 const t_ARGS_04& args_04,
3522 const t_ARGS_05& args_05,
3523 const t_ARGS_06& args_06,
3524 const t_ARGS_07& args_07,
3525 const t_ARGS_08& args_08)
3538#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
3539template <
class t_OUT,
class t_ARGS_01,
3553 const t_ARGS_01& args_01,
3554 const t_ARGS_02& args_02,
3555 const t_ARGS_03& args_03,
3556 const t_ARGS_04& args_04,
3557 const t_ARGS_05& args_05,
3558 const t_ARGS_06& args_06,
3559 const t_ARGS_07& args_07,
3560 const t_ARGS_08& args_08,
3561 const t_ARGS_09& args_09)
3575#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
3576template <
class t_OUT,
class t_ARGS_01,
3591 const t_ARGS_01& args_01,
3592 const t_ARGS_02& args_02,
3593 const t_ARGS_03& args_03,
3594 const t_ARGS_04& args_04,
3595 const t_ARGS_05& args_05,
3596 const t_ARGS_06& args_06,
3597 const t_ARGS_07& args_07,
3598 const t_ARGS_08& args_08,
3599 const t_ARGS_09& args_09,
3600 const t_ARGS_10& args_10)
3616#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
3626#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
3627template <
class t_ARGS_01>
3630 const t_ARGS_01& args_01)
3638#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
3639template <
class t_ARGS_01,
3643 const t_ARGS_01& args_01,
3644 const t_ARGS_02& args_02)
3653#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
3654template <
class t_ARGS_01,
3659 const t_ARGS_01& args_01,
3660 const t_ARGS_02& args_02,
3661 const t_ARGS_03& args_03)
3671#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
3672template <
class t_ARGS_01,
3678 const t_ARGS_01& args_01,
3679 const t_ARGS_02& args_02,
3680 const t_ARGS_03& args_03,
3681 const t_ARGS_04& args_04)
3692#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
3693template <
class t_ARGS_01,
3700 const t_ARGS_01& args_01,
3701 const t_ARGS_02& args_02,
3702 const t_ARGS_03& args_03,
3703 const t_ARGS_04& args_04,
3704 const t_ARGS_05& args_05)
3716#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
3717template <
class t_ARGS_01,
3725 const t_ARGS_01& args_01,
3726 const t_ARGS_02& args_02,
3727 const t_ARGS_03& args_03,
3728 const t_ARGS_04& args_04,
3729 const t_ARGS_05& args_05,
3730 const t_ARGS_06& args_06)
3743#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
3744template <
class t_ARGS_01,
3753 const t_ARGS_01& args_01,
3754 const t_ARGS_02& args_02,
3755 const t_ARGS_03& args_03,
3756 const t_ARGS_04& args_04,
3757 const t_ARGS_05& args_05,
3758 const t_ARGS_06& args_06,
3759 const t_ARGS_07& args_07)
3773#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
3774template <
class t_ARGS_01,
3784 const t_ARGS_01& args_01,
3785 const t_ARGS_02& args_02,
3786 const t_ARGS_03& args_03,
3787 const t_ARGS_04& args_04,
3788 const t_ARGS_05& args_05,
3789 const t_ARGS_06& args_06,
3790 const t_ARGS_07& args_07,
3791 const t_ARGS_08& args_08)
3806#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
3807template <
class t_ARGS_01,
3818 const t_ARGS_01& args_01,
3819 const t_ARGS_02& args_02,
3820 const t_ARGS_03& args_03,
3821 const t_ARGS_04& args_04,
3822 const t_ARGS_05& args_05,
3823 const t_ARGS_06& args_06,
3824 const t_ARGS_07& args_07,
3825 const t_ARGS_08& args_08,
3826 const t_ARGS_09& args_09)
3842#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
3843template <
class t_ARGS_01,
3855 const t_ARGS_01& args_01,
3856 const t_ARGS_02& args_02,
3857 const t_ARGS_03& args_03,
3858 const t_ARGS_04& args_04,
3859 const t_ARGS_05& args_05,
3860 const t_ARGS_06& args_06,
3861 const t_ARGS_07& args_07,
3862 const t_ARGS_08& args_08,
3863 const t_ARGS_09& args_09,
3864 const t_ARGS_10& args_10)
3882#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
3892#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
3893template <
class t_ARGS_01>
3896 const t_ARGS_01& args_01)
3904#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
3905template <
class t_ARGS_01,
3909 const t_ARGS_01& args_01,
3910 const t_ARGS_02& args_02)
3919#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
3920template <
class t_ARGS_01,
3925 const t_ARGS_01& args_01,
3926 const t_ARGS_02& args_02,
3927 const t_ARGS_03& args_03)
3937#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
3938template <
class t_ARGS_01,
3944 const t_ARGS_01& args_01,
3945 const t_ARGS_02& args_02,
3946 const t_ARGS_03& args_03,
3947 const t_ARGS_04& args_04)
3958#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
3959template <
class t_ARGS_01,
3966 const t_ARGS_01& args_01,
3967 const t_ARGS_02& args_02,
3968 const t_ARGS_03& args_03,
3969 const t_ARGS_04& args_04,
3970 const t_ARGS_05& args_05)
3982#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
3983template <
class t_ARGS_01,
3991 const t_ARGS_01& args_01,
3992 const t_ARGS_02& args_02,
3993 const t_ARGS_03& args_03,
3994 const t_ARGS_04& args_04,
3995 const t_ARGS_05& args_05,
3996 const t_ARGS_06& args_06)
4009#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
4010template <
class t_ARGS_01,
4019 const t_ARGS_01& args_01,
4020 const t_ARGS_02& args_02,
4021 const t_ARGS_03& args_03,
4022 const t_ARGS_04& args_04,
4023 const t_ARGS_05& args_05,
4024 const t_ARGS_06& args_06,
4025 const t_ARGS_07& args_07)
4039#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
4040template <
class t_ARGS_01,
4050 const t_ARGS_01& args_01,
4051 const t_ARGS_02& args_02,
4052 const t_ARGS_03& args_03,
4053 const t_ARGS_04& args_04,
4054 const t_ARGS_05& args_05,
4055 const t_ARGS_06& args_06,
4056 const t_ARGS_07& args_07,
4057 const t_ARGS_08& args_08)
4072#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
4073template <
class t_ARGS_01,
4084 const t_ARGS_01& args_01,
4085 const t_ARGS_02& args_02,
4086 const t_ARGS_03& args_03,
4087 const t_ARGS_04& args_04,
4088 const t_ARGS_05& args_05,
4089 const t_ARGS_06& args_06,
4090 const t_ARGS_07& args_07,
4091 const t_ARGS_08& args_08,
4092 const t_ARGS_09& args_09)
4108#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
4109template <
class t_ARGS_01,
4121 const t_ARGS_01& args_01,
4122 const t_ARGS_02& args_02,
4123 const t_ARGS_03& args_03,
4124 const t_ARGS_04& args_04,
4125 const t_ARGS_05& args_05,
4126 const t_ARGS_06& args_06,
4127 const t_ARGS_07& args_07,
4128 const t_ARGS_08& args_08,
4129 const t_ARGS_09& args_09,
4130 const t_ARGS_10& args_10)
4148#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
4157#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
4158template <
class t_ARGS_01>
4160 const t_ARGS_01& args_01)
4168#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
4169template <
class t_ARGS_01,
4172 const t_ARGS_01& args_01,
4173 const t_ARGS_02& args_02)
4182#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
4183template <
class t_ARGS_01,
4187 const t_ARGS_01& args_01,
4188 const t_ARGS_02& args_02,
4189 const t_ARGS_03& args_03)
4199#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
4200template <
class t_ARGS_01,
4205 const t_ARGS_01& args_01,
4206 const t_ARGS_02& args_02,
4207 const t_ARGS_03& args_03,
4208 const t_ARGS_04& args_04)
4219#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
4220template <
class t_ARGS_01,
4226 const t_ARGS_01& args_01,
4227 const t_ARGS_02& args_02,
4228 const t_ARGS_03& args_03,
4229 const t_ARGS_04& args_04,
4230 const t_ARGS_05& args_05)
4242#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
4243template <
class t_ARGS_01,
4250 const t_ARGS_01& args_01,
4251 const t_ARGS_02& args_02,
4252 const t_ARGS_03& args_03,
4253 const t_ARGS_04& args_04,
4254 const t_ARGS_05& args_05,
4255 const t_ARGS_06& args_06)
4268#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
4269template <
class t_ARGS_01,
4277 const t_ARGS_01& args_01,
4278 const t_ARGS_02& args_02,
4279 const t_ARGS_03& args_03,
4280 const t_ARGS_04& args_04,
4281 const t_ARGS_05& args_05,
4282 const t_ARGS_06& args_06,
4283 const t_ARGS_07& args_07)
4297#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
4298template <
class t_ARGS_01,
4307 const t_ARGS_01& args_01,
4308 const t_ARGS_02& args_02,
4309 const t_ARGS_03& args_03,
4310 const t_ARGS_04& args_04,
4311 const t_ARGS_05& args_05,
4312 const t_ARGS_06& args_06,
4313 const t_ARGS_07& args_07,
4314 const t_ARGS_08& args_08)
4329#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
4330template <
class t_ARGS_01,
4340 const t_ARGS_01& args_01,
4341 const t_ARGS_02& args_02,
4342 const t_ARGS_03& args_03,
4343 const t_ARGS_04& args_04,
4344 const t_ARGS_05& args_05,
4345 const t_ARGS_06& args_06,
4346 const t_ARGS_07& args_07,
4347 const t_ARGS_08& args_08,
4348 const t_ARGS_09& args_09)
4364#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
4365template <
class t_ARGS_01,
4376 const t_ARGS_01& args_01,
4377 const t_ARGS_02& args_02,
4378 const t_ARGS_03& args_03,
4379 const t_ARGS_04& args_04,
4380 const t_ARGS_05& args_05,
4381 const t_ARGS_06& args_06,
4382 const t_ARGS_07& args_07,
4383 const t_ARGS_08& args_08,
4384 const t_ARGS_09& args_09,
4385 const t_ARGS_10& args_10)
4403#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
4412#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
4413template <
class t_ARGS_01>
4415 const t_ARGS_01& args_01)
4423#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
4424template <
class t_ARGS_01,
4427 const t_ARGS_01& args_01,
4428 const t_ARGS_02& args_02)
4437#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
4438template <
class t_ARGS_01,
4442 const t_ARGS_01& args_01,
4443 const t_ARGS_02& args_02,
4444 const t_ARGS_03& args_03)
4454#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
4455template <
class t_ARGS_01,
4460 const t_ARGS_01& args_01,
4461 const t_ARGS_02& args_02,
4462 const t_ARGS_03& args_03,
4463 const t_ARGS_04& args_04)
4474#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
4475template <
class t_ARGS_01,
4481 const t_ARGS_01& args_01,
4482 const t_ARGS_02& args_02,
4483 const t_ARGS_03& args_03,
4484 const t_ARGS_04& args_04,
4485 const t_ARGS_05& args_05)
4497#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
4498template <
class t_ARGS_01,
4505 const t_ARGS_01& args_01,
4506 const t_ARGS_02& args_02,
4507 const t_ARGS_03& args_03,
4508 const t_ARGS_04& args_04,
4509 const t_ARGS_05& args_05,
4510 const t_ARGS_06& args_06)
4523#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
4524template <
class t_ARGS_01,
4532 const t_ARGS_01& args_01,
4533 const t_ARGS_02& args_02,
4534 const t_ARGS_03& args_03,
4535 const t_ARGS_04& args_04,
4536 const t_ARGS_05& args_05,
4537 const t_ARGS_06& args_06,
4538 const t_ARGS_07& args_07)
4552#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
4553template <
class t_ARGS_01,
4562 const t_ARGS_01& args_01,
4563 const t_ARGS_02& args_02,
4564 const t_ARGS_03& args_03,
4565 const t_ARGS_04& args_04,
4566 const t_ARGS_05& args_05,
4567 const t_ARGS_06& args_06,
4568 const t_ARGS_07& args_07,
4569 const t_ARGS_08& args_08)
4584#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
4585template <
class t_ARGS_01,
4595 const t_ARGS_01& args_01,
4596 const t_ARGS_02& args_02,
4597 const t_ARGS_03& args_03,
4598 const t_ARGS_04& args_04,
4599 const t_ARGS_05& args_05,
4600 const t_ARGS_06& args_06,
4601 const t_ARGS_07& args_07,
4602 const t_ARGS_08& args_08,
4603 const t_ARGS_09& args_09)
4619#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
4620template <
class t_ARGS_01,
4631 const t_ARGS_01& args_01,
4632 const t_ARGS_02& args_02,
4633 const t_ARGS_03& args_03,
4634 const t_ARGS_04& args_04,
4635 const t_ARGS_05& args_05,
4636 const t_ARGS_06& args_06,
4637 const t_ARGS_07& args_07,
4638 const t_ARGS_08& args_08,
4639 const t_ARGS_09& args_09,
4640 const t_ARGS_10& args_10)
4658#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
4668#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
4669template <
class t_ARGS_01>
4672 const t_ARGS_01& args_01)
4680#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
4681template <
class t_ARGS_01,
4685 const t_ARGS_01& args_01,
4686 const t_ARGS_02& args_02)
4695#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
4696template <
class t_ARGS_01,
4701 const t_ARGS_01& args_01,
4702 const t_ARGS_02& args_02,
4703 const t_ARGS_03& args_03)
4713#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
4714template <
class t_ARGS_01,
4720 const t_ARGS_01& args_01,
4721 const t_ARGS_02& args_02,
4722 const t_ARGS_03& args_03,
4723 const t_ARGS_04& args_04)
4734#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
4735template <
class t_ARGS_01,
4742 const t_ARGS_01& args_01,
4743 const t_ARGS_02& args_02,
4744 const t_ARGS_03& args_03,
4745 const t_ARGS_04& args_04,
4746 const t_ARGS_05& args_05)
4758#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
4759template <
class t_ARGS_01,
4767 const t_ARGS_01& args_01,
4768 const t_ARGS_02& args_02,
4769 const t_ARGS_03& args_03,
4770 const t_ARGS_04& args_04,
4771 const t_ARGS_05& args_05,
4772 const t_ARGS_06& args_06)
4785#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
4786template <
class t_ARGS_01,
4795 const t_ARGS_01& args_01,
4796 const t_ARGS_02& args_02,
4797 const t_ARGS_03& args_03,
4798 const t_ARGS_04& args_04,
4799 const t_ARGS_05& args_05,
4800 const t_ARGS_06& args_06,
4801 const t_ARGS_07& args_07)
4815#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
4816template <
class t_ARGS_01,
4826 const t_ARGS_01& args_01,
4827 const t_ARGS_02& args_02,
4828 const t_ARGS_03& args_03,
4829 const t_ARGS_04& args_04,
4830 const t_ARGS_05& args_05,
4831 const t_ARGS_06& args_06,
4832 const t_ARGS_07& args_07,
4833 const t_ARGS_08& args_08)
4848#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
4849template <
class t_ARGS_01,
4860 const t_ARGS_01& args_01,
4861 const t_ARGS_02& args_02,
4862 const t_ARGS_03& args_03,
4863 const t_ARGS_04& args_04,
4864 const t_ARGS_05& args_05,
4865 const t_ARGS_06& args_06,
4866 const t_ARGS_07& args_07,
4867 const t_ARGS_08& args_08,
4868 const t_ARGS_09& args_09)
4884#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
4885template <
class t_ARGS_01,
4897 const t_ARGS_01& args_01,
4898 const t_ARGS_02& args_02,
4899 const t_ARGS_03& args_03,
4900 const t_ARGS_04& args_04,
4901 const t_ARGS_05& args_05,
4902 const t_ARGS_06& args_06,
4903 const t_ARGS_07& args_07,
4904 const t_ARGS_08& args_08,
4905 const t_ARGS_09& args_09,
4906 const t_ARGS_10& args_10)
4924#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
4934#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
4935template <
class t_ARGS_01>
4938 const t_ARGS_01& args_01)
4946#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
4947template <
class t_ARGS_01,
4951 const t_ARGS_01& args_01,
4952 const t_ARGS_02& args_02)
4961#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
4962template <
class t_ARGS_01,
4967 const t_ARGS_01& args_01,
4968 const t_ARGS_02& args_02,
4969 const t_ARGS_03& args_03)
4979#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
4980template <
class t_ARGS_01,
4986 const t_ARGS_01& args_01,
4987 const t_ARGS_02& args_02,
4988 const t_ARGS_03& args_03,
4989 const t_ARGS_04& args_04)
5000#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
5001template <
class t_ARGS_01,
5008 const t_ARGS_01& args_01,
5009 const t_ARGS_02& args_02,
5010 const t_ARGS_03& args_03,
5011 const t_ARGS_04& args_04,
5012 const t_ARGS_05& args_05)
5024#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
5025template <
class t_ARGS_01,
5033 const t_ARGS_01& args_01,
5034 const t_ARGS_02& args_02,
5035 const t_ARGS_03& args_03,
5036 const t_ARGS_04& args_04,
5037 const t_ARGS_05& args_05,
5038 const t_ARGS_06& args_06)
5051#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
5052template <
class t_ARGS_01,
5061 const t_ARGS_01& args_01,
5062 const t_ARGS_02& args_02,
5063 const t_ARGS_03& args_03,
5064 const t_ARGS_04& args_04,
5065 const t_ARGS_05& args_05,
5066 const t_ARGS_06& args_06,
5067 const t_ARGS_07& args_07)
5081#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
5082template <
class t_ARGS_01,
5092 const t_ARGS_01& args_01,
5093 const t_ARGS_02& args_02,
5094 const t_ARGS_03& args_03,
5095 const t_ARGS_04& args_04,
5096 const t_ARGS_05& args_05,
5097 const t_ARGS_06& args_06,
5098 const t_ARGS_07& args_07,
5099 const t_ARGS_08& args_08)
5114#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
5115template <
class t_ARGS_01,
5126 const t_ARGS_01& args_01,
5127 const t_ARGS_02& args_02,
5128 const t_ARGS_03& args_03,
5129 const t_ARGS_04& args_04,
5130 const t_ARGS_05& args_05,
5131 const t_ARGS_06& args_06,
5132 const t_ARGS_07& args_07,
5133 const t_ARGS_08& args_08,
5134 const t_ARGS_09& args_09)
5150#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
5151template <
class t_ARGS_01,
5163 const t_ARGS_01& args_01,
5164 const t_ARGS_02& args_02,
5165 const t_ARGS_03& args_03,
5166 const t_ARGS_04& args_04,
5167 const t_ARGS_05& args_05,
5168 const t_ARGS_06& args_06,
5169 const t_ARGS_07& args_07,
5170 const t_ARGS_08& args_08,
5171 const t_ARGS_09& args_09,
5172 const t_ARGS_10& args_10)
5190#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
5193 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5196 TruncatingIterator it(0, 0);
5202#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
5203template <
class t_ARGS_01>
5205 const t_ARGS_01& args_01)
5207 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5210 TruncatingIterator it(0, 0);
5211 TruncatingIterator
end =
format_to(it, fmtStr, args_01);
5216#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
5217template <
class t_ARGS_01,
5220 const t_ARGS_01& args_01,
5221 const t_ARGS_02& args_02)
5223 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5226 TruncatingIterator it(0, 0);
5227 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5233#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
5234template <
class t_ARGS_01,
5238 const t_ARGS_01& args_01,
5239 const t_ARGS_02& args_02,
5240 const t_ARGS_03& args_03)
5242 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5245 TruncatingIterator it(0, 0);
5246 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5253#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
5254template <
class t_ARGS_01,
5259 const t_ARGS_01& args_01,
5260 const t_ARGS_02& args_02,
5261 const t_ARGS_03& args_03,
5262 const t_ARGS_04& args_04)
5264 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5267 TruncatingIterator it(0, 0);
5268 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5276#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
5277template <
class t_ARGS_01,
5283 const t_ARGS_01& args_01,
5284 const t_ARGS_02& args_02,
5285 const t_ARGS_03& args_03,
5286 const t_ARGS_04& args_04,
5287 const t_ARGS_05& args_05)
5289 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5292 TruncatingIterator it(0, 0);
5293 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5302#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
5303template <
class t_ARGS_01,
5310 const t_ARGS_01& args_01,
5311 const t_ARGS_02& args_02,
5312 const t_ARGS_03& args_03,
5313 const t_ARGS_04& args_04,
5314 const t_ARGS_05& args_05,
5315 const t_ARGS_06& args_06)
5317 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5320 TruncatingIterator it(0, 0);
5321 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5331#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
5332template <
class t_ARGS_01,
5340 const t_ARGS_01& args_01,
5341 const t_ARGS_02& args_02,
5342 const t_ARGS_03& args_03,
5343 const t_ARGS_04& args_04,
5344 const t_ARGS_05& args_05,
5345 const t_ARGS_06& args_06,
5346 const t_ARGS_07& args_07)
5348 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5351 TruncatingIterator it(0, 0);
5352 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5363#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
5364template <
class t_ARGS_01,
5373 const t_ARGS_01& args_01,
5374 const t_ARGS_02& args_02,
5375 const t_ARGS_03& args_03,
5376 const t_ARGS_04& args_04,
5377 const t_ARGS_05& args_05,
5378 const t_ARGS_06& args_06,
5379 const t_ARGS_07& args_07,
5380 const t_ARGS_08& args_08)
5382 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5385 TruncatingIterator it(0, 0);
5386 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5398#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
5399template <
class t_ARGS_01,
5409 const t_ARGS_01& args_01,
5410 const t_ARGS_02& args_02,
5411 const t_ARGS_03& args_03,
5412 const t_ARGS_04& args_04,
5413 const t_ARGS_05& args_05,
5414 const t_ARGS_06& args_06,
5415 const t_ARGS_07& args_07,
5416 const t_ARGS_08& args_08,
5417 const t_ARGS_09& args_09)
5419 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5422 TruncatingIterator it(0, 0);
5423 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5436#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
5437template <
class t_ARGS_01,
5448 const t_ARGS_01& args_01,
5449 const t_ARGS_02& args_02,
5450 const t_ARGS_03& args_03,
5451 const t_ARGS_04& args_04,
5452 const t_ARGS_05& args_05,
5453 const t_ARGS_06& args_06,
5454 const t_ARGS_07& args_07,
5455 const t_ARGS_08& args_08,
5456 const t_ARGS_09& args_09,
5457 const t_ARGS_10& args_10)
5459 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
5462 TruncatingIterator it(0, 0);
5463 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5478#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
5481 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5484 TruncatingIterator it(0, 0);
5490#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
5491template <
class t_ARGS_01>
5493 const t_ARGS_01& args_01)
5495 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5498 TruncatingIterator it(0, 0);
5499 TruncatingIterator
end =
format_to(it, fmtStr, args_01);
5504#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
5505template <
class t_ARGS_01,
5508 const t_ARGS_01& args_01,
5509 const t_ARGS_02& args_02)
5511 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5514 TruncatingIterator it(0, 0);
5515 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5521#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
5522template <
class t_ARGS_01,
5526 const t_ARGS_01& args_01,
5527 const t_ARGS_02& args_02,
5528 const t_ARGS_03& args_03)
5530 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5533 TruncatingIterator it(0, 0);
5534 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5541#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
5542template <
class t_ARGS_01,
5547 const t_ARGS_01& args_01,
5548 const t_ARGS_02& args_02,
5549 const t_ARGS_03& args_03,
5550 const t_ARGS_04& args_04)
5552 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5555 TruncatingIterator it(0, 0);
5556 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5564#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
5565template <
class t_ARGS_01,
5571 const t_ARGS_01& args_01,
5572 const t_ARGS_02& args_02,
5573 const t_ARGS_03& args_03,
5574 const t_ARGS_04& args_04,
5575 const t_ARGS_05& args_05)
5577 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5580 TruncatingIterator it(0, 0);
5581 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5590#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
5591template <
class t_ARGS_01,
5598 const t_ARGS_01& args_01,
5599 const t_ARGS_02& args_02,
5600 const t_ARGS_03& args_03,
5601 const t_ARGS_04& args_04,
5602 const t_ARGS_05& args_05,
5603 const t_ARGS_06& args_06)
5605 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5608 TruncatingIterator it(0, 0);
5609 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5619#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
5620template <
class t_ARGS_01,
5628 const t_ARGS_01& args_01,
5629 const t_ARGS_02& args_02,
5630 const t_ARGS_03& args_03,
5631 const t_ARGS_04& args_04,
5632 const t_ARGS_05& args_05,
5633 const t_ARGS_06& args_06,
5634 const t_ARGS_07& args_07)
5636 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5639 TruncatingIterator it(0, 0);
5640 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5651#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
5652template <
class t_ARGS_01,
5661 const t_ARGS_01& args_01,
5662 const t_ARGS_02& args_02,
5663 const t_ARGS_03& args_03,
5664 const t_ARGS_04& args_04,
5665 const t_ARGS_05& args_05,
5666 const t_ARGS_06& args_06,
5667 const t_ARGS_07& args_07,
5668 const t_ARGS_08& args_08)
5670 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5673 TruncatingIterator it(0, 0);
5674 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5686#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
5687template <
class t_ARGS_01,
5697 const t_ARGS_01& args_01,
5698 const t_ARGS_02& args_02,
5699 const t_ARGS_03& args_03,
5700 const t_ARGS_04& args_04,
5701 const t_ARGS_05& args_05,
5702 const t_ARGS_06& args_06,
5703 const t_ARGS_07& args_07,
5704 const t_ARGS_08& args_08,
5705 const t_ARGS_09& args_09)
5707 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5710 TruncatingIterator it(0, 0);
5711 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5724#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
5725template <
class t_ARGS_01,
5736 const t_ARGS_01& args_01,
5737 const t_ARGS_02& args_02,
5738 const t_ARGS_03& args_03,
5739 const t_ARGS_04& args_04,
5740 const t_ARGS_05& args_05,
5741 const t_ARGS_06& args_06,
5742 const t_ARGS_07& args_07,
5743 const t_ARGS_08& args_08,
5744 const t_ARGS_09& args_09,
5745 const t_ARGS_10& args_10)
5747 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
5750 TruncatingIterator it(0, 0);
5751 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5767#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
5768template <
class t_OUT>
5769format_to_n_result<t_OUT>
5771 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5774 if (maxNumChars < 0)
5777 typedef Format_Imp_TruncatingIterator<
5779 typename bsl::iterator_traits<t_OUT>::value_type,
5780 typename bsl::iterator_traits<t_OUT>::difference_type>
5783 TruncatingIterator it(out, maxNumChars);
5787 format_to_n_result<t_OUT> result;
5788 result.out =
end.underlying();
5789 result.size =
end.count();
5794#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
5795template <
class t_OUT,
class t_ARGS_01>
5796format_to_n_result<t_OUT>
5798 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5800 const t_ARGS_01& args_01)
5802 if (maxNumChars < 0)
5805 typedef Format_Imp_TruncatingIterator<
5807 typename bsl::iterator_traits<t_OUT>::value_type,
5808 typename bsl::iterator_traits<t_OUT>::difference_type>
5811 TruncatingIterator it(out, maxNumChars);
5813 TruncatingIterator
end =
format_to(it, fmtStr, args_01);
5815 format_to_n_result<t_OUT> result;
5816 result.out =
end.underlying();
5817 result.size =
end.count();
5822#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
5823template <
class t_OUT,
class t_ARGS_01,
5825format_to_n_result<t_OUT>
5827 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5829 const t_ARGS_01& args_01,
5830 const t_ARGS_02& args_02)
5832 if (maxNumChars < 0)
5835 typedef Format_Imp_TruncatingIterator<
5837 typename bsl::iterator_traits<t_OUT>::value_type,
5838 typename bsl::iterator_traits<t_OUT>::difference_type>
5841 TruncatingIterator it(out, maxNumChars);
5843 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5846 format_to_n_result<t_OUT> result;
5847 result.out =
end.underlying();
5848 result.size =
end.count();
5853#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
5854template <
class t_OUT,
class t_ARGS_01,
5857format_to_n_result<t_OUT>
5859 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5861 const t_ARGS_01& args_01,
5862 const t_ARGS_02& args_02,
5863 const t_ARGS_03& args_03)
5865 if (maxNumChars < 0)
5868 typedef Format_Imp_TruncatingIterator<
5870 typename bsl::iterator_traits<t_OUT>::value_type,
5871 typename bsl::iterator_traits<t_OUT>::difference_type>
5874 TruncatingIterator it(out, maxNumChars);
5876 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5880 format_to_n_result<t_OUT> result;
5881 result.out =
end.underlying();
5882 result.size =
end.count();
5887#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
5888template <
class t_OUT,
class t_ARGS_01,
5892format_to_n_result<t_OUT>
5894 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5896 const t_ARGS_01& args_01,
5897 const t_ARGS_02& args_02,
5898 const t_ARGS_03& args_03,
5899 const t_ARGS_04& args_04)
5901 if (maxNumChars < 0)
5904 typedef Format_Imp_TruncatingIterator<
5906 typename bsl::iterator_traits<t_OUT>::value_type,
5907 typename bsl::iterator_traits<t_OUT>::difference_type>
5910 TruncatingIterator it(out, maxNumChars);
5912 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5917 format_to_n_result<t_OUT> result;
5918 result.out =
end.underlying();
5919 result.size =
end.count();
5924#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
5925template <
class t_OUT,
class t_ARGS_01,
5930format_to_n_result<t_OUT>
5932 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5934 const t_ARGS_01& args_01,
5935 const t_ARGS_02& args_02,
5936 const t_ARGS_03& args_03,
5937 const t_ARGS_04& args_04,
5938 const t_ARGS_05& args_05)
5940 if (maxNumChars < 0)
5943 typedef Format_Imp_TruncatingIterator<
5945 typename bsl::iterator_traits<t_OUT>::value_type,
5946 typename bsl::iterator_traits<t_OUT>::difference_type>
5949 TruncatingIterator it(out, maxNumChars);
5951 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
5957 format_to_n_result<t_OUT> result;
5958 result.out =
end.underlying();
5959 result.size =
end.count();
5964#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
5965template <
class t_OUT,
class t_ARGS_01,
5971format_to_n_result<t_OUT>
5973 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
5975 const t_ARGS_01& args_01,
5976 const t_ARGS_02& args_02,
5977 const t_ARGS_03& args_03,
5978 const t_ARGS_04& args_04,
5979 const t_ARGS_05& args_05,
5980 const t_ARGS_06& args_06)
5982 if (maxNumChars < 0)
5985 typedef Format_Imp_TruncatingIterator<
5987 typename bsl::iterator_traits<t_OUT>::value_type,
5988 typename bsl::iterator_traits<t_OUT>::difference_type>
5991 TruncatingIterator it(out, maxNumChars);
5993 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6000 format_to_n_result<t_OUT> result;
6001 result.out =
end.underlying();
6002 result.size =
end.count();
6007#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
6008template <
class t_OUT,
class t_ARGS_01,
6015format_to_n_result<t_OUT>
6017 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6019 const t_ARGS_01& args_01,
6020 const t_ARGS_02& args_02,
6021 const t_ARGS_03& args_03,
6022 const t_ARGS_04& args_04,
6023 const t_ARGS_05& args_05,
6024 const t_ARGS_06& args_06,
6025 const t_ARGS_07& args_07)
6027 if (maxNumChars < 0)
6030 typedef Format_Imp_TruncatingIterator<
6032 typename bsl::iterator_traits<t_OUT>::value_type,
6033 typename bsl::iterator_traits<t_OUT>::difference_type>
6036 TruncatingIterator it(out, maxNumChars);
6038 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6046 format_to_n_result<t_OUT> result;
6047 result.out =
end.underlying();
6048 result.size =
end.count();
6053#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
6054template <
class t_OUT,
class t_ARGS_01,
6062format_to_n_result<t_OUT>
6064 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6066 const t_ARGS_01& args_01,
6067 const t_ARGS_02& args_02,
6068 const t_ARGS_03& args_03,
6069 const t_ARGS_04& args_04,
6070 const t_ARGS_05& args_05,
6071 const t_ARGS_06& args_06,
6072 const t_ARGS_07& args_07,
6073 const t_ARGS_08& args_08)
6075 if (maxNumChars < 0)
6078 typedef Format_Imp_TruncatingIterator<
6080 typename bsl::iterator_traits<t_OUT>::value_type,
6081 typename bsl::iterator_traits<t_OUT>::difference_type>
6084 TruncatingIterator it(out, maxNumChars);
6086 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6095 format_to_n_result<t_OUT> result;
6096 result.out =
end.underlying();
6097 result.size =
end.count();
6102#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
6103template <
class t_OUT,
class t_ARGS_01,
6112format_to_n_result<t_OUT>
6114 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6116 const t_ARGS_01& args_01,
6117 const t_ARGS_02& args_02,
6118 const t_ARGS_03& args_03,
6119 const t_ARGS_04& args_04,
6120 const t_ARGS_05& args_05,
6121 const t_ARGS_06& args_06,
6122 const t_ARGS_07& args_07,
6123 const t_ARGS_08& args_08,
6124 const t_ARGS_09& args_09)
6126 if (maxNumChars < 0)
6129 typedef Format_Imp_TruncatingIterator<
6131 typename bsl::iterator_traits<t_OUT>::value_type,
6132 typename bsl::iterator_traits<t_OUT>::difference_type>
6135 TruncatingIterator it(out, maxNumChars);
6137 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6147 format_to_n_result<t_OUT> result;
6148 result.out =
end.underlying();
6149 result.size =
end.count();
6154#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
6155template <
class t_OUT,
class t_ARGS_01,
6165format_to_n_result<t_OUT>
6167 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6169 const t_ARGS_01& args_01,
6170 const t_ARGS_02& args_02,
6171 const t_ARGS_03& args_03,
6172 const t_ARGS_04& args_04,
6173 const t_ARGS_05& args_05,
6174 const t_ARGS_06& args_06,
6175 const t_ARGS_07& args_07,
6176 const t_ARGS_08& args_08,
6177 const t_ARGS_09& args_09,
6178 const t_ARGS_10& args_10)
6180 if (maxNumChars < 0)
6183 typedef Format_Imp_TruncatingIterator<
6185 typename bsl::iterator_traits<t_OUT>::value_type,
6186 typename bsl::iterator_traits<t_OUT>::difference_type>
6189 TruncatingIterator it(out, maxNumChars);
6191 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6202 format_to_n_result<t_OUT> result;
6203 result.out =
end.underlying();
6204 result.size =
end.count();
6210#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 0
6211template <
class t_OUT>
6212format_to_n_result<t_OUT>
6214 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6217 if (maxNumChars < 0)
6220 typedef Format_Imp_TruncatingIterator<
6222 typename bsl::iterator_traits<t_OUT>::value_type,
6223 typename bsl::iterator_traits<t_OUT>::difference_type>
6226 TruncatingIterator it(out, maxNumChars);
6230 format_to_n_result<t_OUT> result;
6231 result.out =
end.underlying();
6232 result.size =
end.count();
6237#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 1
6238template <
class t_OUT,
class t_ARGS_01>
6239format_to_n_result<t_OUT>
6241 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6243 const t_ARGS_01& args_01)
6245 if (maxNumChars < 0)
6248 typedef Format_Imp_TruncatingIterator<
6250 typename bsl::iterator_traits<t_OUT>::value_type,
6251 typename bsl::iterator_traits<t_OUT>::difference_type>
6254 TruncatingIterator it(out, maxNumChars);
6256 TruncatingIterator
end =
format_to(it, fmtStr, args_01);
6258 format_to_n_result<t_OUT> result;
6259 result.out =
end.underlying();
6260 result.size =
end.count();
6265#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 2
6266template <
class t_OUT,
class t_ARGS_01,
6268format_to_n_result<t_OUT>
6270 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6272 const t_ARGS_01& args_01,
6273 const t_ARGS_02& args_02)
6275 if (maxNumChars < 0)
6278 typedef Format_Imp_TruncatingIterator<
6280 typename bsl::iterator_traits<t_OUT>::value_type,
6281 typename bsl::iterator_traits<t_OUT>::difference_type>
6284 TruncatingIterator it(out, maxNumChars);
6286 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6289 format_to_n_result<t_OUT> result;
6290 result.out =
end.underlying();
6291 result.size =
end.count();
6296#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 3
6297template <
class t_OUT,
class t_ARGS_01,
6300format_to_n_result<t_OUT>
6302 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6304 const t_ARGS_01& args_01,
6305 const t_ARGS_02& args_02,
6306 const t_ARGS_03& args_03)
6308 if (maxNumChars < 0)
6311 typedef Format_Imp_TruncatingIterator<
6313 typename bsl::iterator_traits<t_OUT>::value_type,
6314 typename bsl::iterator_traits<t_OUT>::difference_type>
6317 TruncatingIterator it(out, maxNumChars);
6319 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6323 format_to_n_result<t_OUT> result;
6324 result.out =
end.underlying();
6325 result.size =
end.count();
6330#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 4
6331template <
class t_OUT,
class t_ARGS_01,
6335format_to_n_result<t_OUT>
6337 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6339 const t_ARGS_01& args_01,
6340 const t_ARGS_02& args_02,
6341 const t_ARGS_03& args_03,
6342 const t_ARGS_04& args_04)
6344 if (maxNumChars < 0)
6347 typedef Format_Imp_TruncatingIterator<
6349 typename bsl::iterator_traits<t_OUT>::value_type,
6350 typename bsl::iterator_traits<t_OUT>::difference_type>
6353 TruncatingIterator it(out, maxNumChars);
6355 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6360 format_to_n_result<t_OUT> result;
6361 result.out =
end.underlying();
6362 result.size =
end.count();
6367#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 5
6368template <
class t_OUT,
class t_ARGS_01,
6373format_to_n_result<t_OUT>
6375 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6377 const t_ARGS_01& args_01,
6378 const t_ARGS_02& args_02,
6379 const t_ARGS_03& args_03,
6380 const t_ARGS_04& args_04,
6381 const t_ARGS_05& args_05)
6383 if (maxNumChars < 0)
6386 typedef Format_Imp_TruncatingIterator<
6388 typename bsl::iterator_traits<t_OUT>::value_type,
6389 typename bsl::iterator_traits<t_OUT>::difference_type>
6392 TruncatingIterator it(out, maxNumChars);
6394 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6400 format_to_n_result<t_OUT> result;
6401 result.out =
end.underlying();
6402 result.size =
end.count();
6407#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 6
6408template <
class t_OUT,
class t_ARGS_01,
6414format_to_n_result<t_OUT>
6416 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6418 const t_ARGS_01& args_01,
6419 const t_ARGS_02& args_02,
6420 const t_ARGS_03& args_03,
6421 const t_ARGS_04& args_04,
6422 const t_ARGS_05& args_05,
6423 const t_ARGS_06& args_06)
6425 if (maxNumChars < 0)
6428 typedef Format_Imp_TruncatingIterator<
6430 typename bsl::iterator_traits<t_OUT>::value_type,
6431 typename bsl::iterator_traits<t_OUT>::difference_type>
6434 TruncatingIterator it(out, maxNumChars);
6436 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6443 format_to_n_result<t_OUT> result;
6444 result.out =
end.underlying();
6445 result.size =
end.count();
6450#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 7
6451template <
class t_OUT,
class t_ARGS_01,
6458format_to_n_result<t_OUT>
6460 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6462 const t_ARGS_01& args_01,
6463 const t_ARGS_02& args_02,
6464 const t_ARGS_03& args_03,
6465 const t_ARGS_04& args_04,
6466 const t_ARGS_05& args_05,
6467 const t_ARGS_06& args_06,
6468 const t_ARGS_07& args_07)
6470 if (maxNumChars < 0)
6473 typedef Format_Imp_TruncatingIterator<
6475 typename bsl::iterator_traits<t_OUT>::value_type,
6476 typename bsl::iterator_traits<t_OUT>::difference_type>
6479 TruncatingIterator it(out, maxNumChars);
6481 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6489 format_to_n_result<t_OUT> result;
6490 result.out =
end.underlying();
6491 result.size =
end.count();
6496#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 8
6497template <
class t_OUT,
class t_ARGS_01,
6505format_to_n_result<t_OUT>
6507 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6509 const t_ARGS_01& args_01,
6510 const t_ARGS_02& args_02,
6511 const t_ARGS_03& args_03,
6512 const t_ARGS_04& args_04,
6513 const t_ARGS_05& args_05,
6514 const t_ARGS_06& args_06,
6515 const t_ARGS_07& args_07,
6516 const t_ARGS_08& args_08)
6518 if (maxNumChars < 0)
6521 typedef Format_Imp_TruncatingIterator<
6523 typename bsl::iterator_traits<t_OUT>::value_type,
6524 typename bsl::iterator_traits<t_OUT>::difference_type>
6527 TruncatingIterator it(out, maxNumChars);
6529 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6538 format_to_n_result<t_OUT> result;
6539 result.out =
end.underlying();
6540 result.size =
end.count();
6545#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 9
6546template <
class t_OUT,
class t_ARGS_01,
6555format_to_n_result<t_OUT>
6557 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6559 const t_ARGS_01& args_01,
6560 const t_ARGS_02& args_02,
6561 const t_ARGS_03& args_03,
6562 const t_ARGS_04& args_04,
6563 const t_ARGS_05& args_05,
6564 const t_ARGS_06& args_06,
6565 const t_ARGS_07& args_07,
6566 const t_ARGS_08& args_08,
6567 const t_ARGS_09& args_09)
6569 if (maxNumChars < 0)
6572 typedef Format_Imp_TruncatingIterator<
6574 typename bsl::iterator_traits<t_OUT>::value_type,
6575 typename bsl::iterator_traits<t_OUT>::difference_type>
6578 TruncatingIterator it(out, maxNumChars);
6580 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6590 format_to_n_result<t_OUT> result;
6591 result.out =
end.underlying();
6592 result.size =
end.count();
6597#if BSLFMT_FORMAT_IMP_VARIADIC_LIMIT_B >= 10
6598template <
class t_OUT,
class t_ARGS_01,
6608format_to_n_result<t_OUT>
6610 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6612 const t_ARGS_01& args_01,
6613 const t_ARGS_02& args_02,
6614 const t_ARGS_03& args_03,
6615 const t_ARGS_04& args_04,
6616 const t_ARGS_05& args_05,
6617 const t_ARGS_06& args_06,
6618 const t_ARGS_07& args_07,
6619 const t_ARGS_08& args_08,
6620 const t_ARGS_09& args_09,
6621 const t_ARGS_10& args_10)
6623 if (maxNumChars < 0)
6626 typedef Format_Imp_TruncatingIterator<
6628 typename bsl::iterator_traits<t_OUT>::value_type,
6629 typename bsl::iterator_traits<t_OUT>::difference_type>
6632 TruncatingIterator it(out, maxNumChars);
6634 TruncatingIterator
end =
format_to(it, fmtStr, args_01,
6645 format_to_n_result<t_OUT> result;
6646 result.out =
end.underlying();
6647 result.size =
end.count();
6655template <
class t_OUT,
class... t_ARGS>
6661 const t_ARGS&... args)
6666template <
class t_OUT,
class... t_ARGS>
6672 const t_ARGS&... args)
6677template <
class... t_ARGS>
6680 const t_ARGS&... args)
6687template <
class... t_ARGS>
6690 const t_ARGS&... args)
6697template <
class... t_ARGS>
6705template <
class... t_ARGS>
6707 const t_ARGS&... args)
6714template <
class... t_ARGS>
6717 const t_ARGS&... args)
6724template <
class... t_ARGS>
6727 const t_ARGS&... args)
6734template <
class... t_ARGS>
6736 const t_ARGS&... args)
6738 typedef Format_Imp_TruncatingIterator<char *, char, ptrdiff_t>
6741 TruncatingIterator it(0, 0);
6742 TruncatingIterator
end =
format_to(it, fmtStr, args...);
6746template <
class... t_ARGS>
6748 const t_ARGS&... args)
6750 typedef Format_Imp_TruncatingIterator<wchar_t *, wchar_t, ptrdiff_t>
6753 TruncatingIterator it(0, 0);
6754 TruncatingIterator
end =
format_to(it, fmtStr, args...);
6759template <
class t_OUT,
class... t_ARGS>
6760format_to_n_result<t_OUT>
6762 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6764 const t_ARGS&... args)
6766 if (maxNumChars < 0)
6769 typedef Format_Imp_TruncatingIterator<
6771 typename bsl::iterator_traits<t_OUT>::value_type,
6772 typename bsl::iterator_traits<t_OUT>::difference_type>
6775 TruncatingIterator it(out, maxNumChars);
6777 TruncatingIterator
end =
format_to(it, fmtStr, args...);
6779 format_to_n_result<t_OUT> result;
6780 result.out =
end.underlying();
6781 result.size =
end.count();
6785template <
class t_OUT,
class... t_ARGS>
6786format_to_n_result<t_OUT>
6788 typename bsl::iterator_traits<t_OUT>::difference_type maxNumChars,
6790 const t_ARGS&... args)
6792 if (maxNumChars < 0)
6795 typedef Format_Imp_TruncatingIterator<
6797 typename bsl::iterator_traits<t_OUT>::value_type,
6798 typename bsl::iterator_traits<t_OUT>::difference_type>
6801 TruncatingIterator it(out, maxNumChars);
6803 TruncatingIterator
end =
format_to(it, fmtStr, args...);
6805 format_to_n_result<t_OUT> result;
6806 result.out =
end.underlying();
6807 result.size =
end.count();
6817#undef BSLFMT_FORMAT_STRING_PARAMETER
6818#undef BSLFMT_FORMAT_WSTRING_PARAMETER
6821# error Not valid except when included from bslfmt_format_imp.h
Definition bslma_bslallocator.h:588
Definition bslstl_stringview.h:471
const_iterator iterator
Definition bslstl_stringview.h:482
Definition bslstl_string.h:1252
#define BSLS_ASSERT_OPT_UNREACHABLE(X)
Definition bsls_assert.h:2065
#define BSLS_THROW(X)
Definition bsls_exceptionutil.h:374
#define BSLS_KEYWORD_DELETED
Definition bsls_keyword.h:651
basic_string< wchar_t > wstring
Definition bslstl_string.h:845
T::iterator end(T &container)
Definition bslstl_iterator.h:1621
basic_string< char > string
Definition bslstl_string.h:844
BSLS_KEYWORD_CONSTEXPR bsl::add_const< TYPE >::type & as_const(TYPE &t) BSLS_KEYWORD_NOEXCEPT
Return a reference offering non-modifiable access to the specified t.
Definition bslstl_utility.h:129
Definition bslfmt_enablestreamedformatter.h:130
bsl::string vformat(bsl::string_view fmt, format_args args)
Definition bslfmt_format_imp.h:1006
format_to_n_result< t_OUT > format_to_n(t_OUT out, typename bsl::iterator_traits< t_OUT >::difference_type maxNumChars, BSLFMT_FORMAT_STRING_PARAMETER fmtStr, const t_ARGS &... args)
Definition bslfmt_format_imp.h:1148
bsl::invoke_result< t_VISITOR &, bsl::monostate & >::type visit_format_arg(t_VISITOR &visitor, basic_format_arg< t_CONTEXT > arg)
Definition bslfmt_format_arg.h:907
bsl::enable_if<!bsl::is_same< typenamebsl::decay< t_OUT >::type, bsl::string * >::value, t_OUT >::type format_to(t_OUT out, BSLFMT_FORMAT_STRING_PARAMETER fmtStr, const t_ARGS &... args)
Definition bslfmt_format_imp.h:1046
std::size_t formatted_size(BSLFMT_FORMAT_STRING_PARAMETER fmtStr, const t_ARGS &... args)
Definition bslfmt_format_imp.h:1122
Format_ArgsStore< format_context, t_ARGS... > make_format_args(t_ARGS &... fmt_args)
Definition bslfmt_format_args.h:461
bsl::string format(BSLFMT_FORMAT_STRING_PARAMETER fmtStr, const t_ARGS &... args)
Definition bslfmt_format_imp.h:1085
basic_format_args< format_context > format_args
Definition bslfmt_format_args.h:197
t_OUT vformat_to(t_OUT out, bsl::string_view fmtStr, format_args args)
Definition bslfmt_format_imp.h:981
basic_format_args< wformat_context > wformat_args
Definition bslfmt_format_args.h:199
Format_ArgsStore< wformat_context, t_ARGS... > make_wformat_args(t_ARGS &... fmt_args)
Definition bslfmt_format_args.h:469
Definition bslmf_enableif.h:530
Definition bslmf_issame.h:146
Definition bslstl_monostate.h:77