Commit Graph

268 Commits

Author SHA1 Message Date
Victor Zverovich
c57d7a506f Factor out argument processing logic common between format and printf to FormatterBase::{next_arg,get_arg}. 2014-08-28 08:05:47 -07:00
Victor Zverovich
56fc525e98 Get rid of FormatterBase::error_. 2014-08-28 07:48:55 -07:00
Victor Zverovich
279c7a6e6a Change "number is too big in format" to "number is too big" because the error can occur not only in the format function. 2014-08-28 06:50:52 -07:00
Victor Zverovich
526b7fc91d Throw exception in parse_nonnegative_int if the number is too big. 2014-08-28 06:42:59 -07:00
Victor Zverovich
9646e38c3b Don't use error_ in parse_arg_index. 2014-08-27 09:13:42 -07:00
Victor Zverovich
da0f7c0a51 Improve error reporting in parse_arg_index. 2014-08-27 09:04:51 -07:00
Victor Zverovich
42de4f1f7d Get rid of FormatErrorReporter. 2014-08-27 08:24:31 -07:00
Victor Zverovich
dd4323f31c Add fprintf and write docs. 2014-08-21 08:49:13 -07:00
Victor Zverovich
be00d8b272 Convert integer argument like printf does. 2014-08-19 08:49:10 -07:00
Victor Zverovich
406c6123fb Cleanup 2014-08-19 08:47:38 -07:00
Victor Zverovich
c4a4a05d12 Improve handling of char in printf. 2014-08-19 08:14:21 -07:00
Victor Zverovich
186734cf8b Fix warnings. 2014-08-18 07:03:12 -07:00
Victor Zverovich
adce0245dc Fix a warning. 2014-08-17 07:53:55 -07:00
Victor Zverovich
366e852f00 Fix a warning. 2014-08-15 16:35:41 -07:00
Victor Zverovich
bb01633d19 Fix a warning. 2014-08-15 09:03:59 -07:00
Victor Zverovich
fb32161fa4 Move implementation specific stuff from format.h to format.cc. 2014-08-15 08:40:03 -07:00
Victor Zverovich
d4412a01f0 Simplify isinfinity. 2014-08-13 08:01:51 -07:00
Victor Zverovich
1a0c76a81a Fix formatting of long double. 2014-08-13 07:51:02 -07:00
Victor Zverovich
e488a28601 Fix a warning. 2014-08-13 06:53:43 -07:00
Victor Zverovich
d3a7039e31 Implement 'll' specifier. 2014-08-12 08:36:19 -07:00
Victor Zverovich
316ae7e244 Implement more printf length specifiers. 2014-08-09 10:04:35 -07:00
Victor Zverovich
e22d657202 Fix MSVC warnings. 2014-08-08 06:51:09 -07:00
Victor Zverovich
a259c941e2 Implement 'l' length specifier. 2014-08-01 07:15:27 -07:00
Victor Zverovich
d81fafc295 Fix tests on MSVC, take 2. 2014-07-31 07:43:14 -07:00
Victor Zverovich
f4156b57f0 Implement 'hh' length specifier in printf. 2014-07-30 08:39:07 -07:00
Victor Zverovich
39b0930aee Improve handling of 'h' length specifier in printf. 2014-07-30 08:08:08 -07:00
Victor Zverovich
eeca22357b Handle 'h' length specifier in printf. 2014-07-30 07:37:16 -07:00
Victor Zverovich
e4c4e4e944 Improve handling of dynamic precision in printf. 2014-07-30 06:51:35 -07:00
Victor Zverovich
be785a8a43 Fix MSVC build. 2014-07-29 09:14:07 -07:00
Victor Zverovich
bf5b246717 fmt_isinf -> isinfinity 2014-07-29 08:22:52 -07:00
Victor Zverovich
24d6baa60f Fix Clang build. 2014-07-29 07:49:34 -07:00
Victor Zverovich
481c313df5 Fix the build. 2014-07-29 07:19:54 -07:00
Victor Zverovich
d8b9f413fe Fix https://github.com/cppformat/cppformat/issues/50. 2014-07-29 06:38:05 -07:00
Victor Zverovich
4d049cf598 More fixes for https://github.com/cppformat/cppformat/issues/50. 2014-07-28 08:41:50 -07:00
Victor Zverovich
75b5eb4b9d More fixes for https://github.com/cppformat/cppformat/issues/50. 2014-07-27 15:09:05 -07:00
Victor Zverovich
5d4803a567 More fixes for https://github.com/cppformat/cppformat/issues/50. 2014-07-27 12:53:42 -07:00
Victor Zverovich
2a1c0c9969 Obey line length limit. 2014-07-26 09:45:03 -07:00
Victor Zverovich
f634ccb344 ReportUnknownType -> report_unknown_type (https://github.com/cppformat/cppformat/issues/50) 2014-07-26 08:42:19 -07:00
Victor Zverovich
b498ba0bc5 FormatFloat -> format_float (https://github.com/cppformat/cppformat/issues/50) 2014-07-26 08:03:03 -07:00
Victor Zverovich
d142e3b55f Simplify handling of flags. 2014-07-25 08:29:06 -07:00
Victor Zverovich
d699c2a0d9 Don't duplicate integer format specifiers when formatting char as integer. 2014-07-25 08:24:27 -07:00
Victor Zverovich
a997de90eb Fix https://github.com/cppformat/cppformat/issues/57. 2014-07-25 07:10:33 -07:00
Victor Zverovich
c1db293518 Don't use Writer's buffer directly in formatters. Unfriend BasicFormatter. 2014-07-24 08:53:27 -07:00
Victor Zverovich
a7d94f0c61 Fix https://github.com/cppformat/cppformat/issues/55. 2014-07-22 12:37:10 -07:00
Victor Zverovich
f1dfd59a41 HandleArgIndex -> handle_arg_index. Use error_ instead of a local. 2014-07-16 08:49:23 -07:00
Victor Zverovich
4edc88f609 Add FormatterBase. 2014-07-16 08:38:15 -07:00
Victor Zverovich
9144a8fbbe PrintfParser -> PrintfFormatter. 2014-07-16 07:59:45 -07:00
Victor Zverovich
9d74f9542b IsNegative -> is_negative. Simplify WidthHandler and ArgFormatter. 2014-07-16 07:27:54 -07:00
Victor Zverovich
512e2ced93 Rewrite argument formatting using ArgVisitor. 2014-07-14 08:47:03 -07:00
Victor Zverovich
e3a2ac8725 Move StringValue to Arg & simplify StringTraits. 2014-07-14 08:04:17 -07:00
Victor Zverovich
591ad0a64a Add ArgVisitor. 2014-07-14 06:55:29 -07:00
Victor Zverovich
9c47f3e057 Fix MinGW issues, take 2. 2014-07-09 09:45:18 -07:00
Victor Zverovich
0ffcec0090 Fix MinGW issues. 2014-07-09 09:35:36 -07:00
Victor Zverovich
8321d0ecf9 Fix warnings on MinGW. 2014-07-09 08:39:01 -07:00
Victor Zverovich
e3a44c11f6 Add an overload of print that accepts std::ostream. 2014-07-09 06:56:36 -07:00
Victor Zverovich
b9a06bafd8 internal::FormatParser -> BasicFormatter. 2014-07-08 16:38:50 -07:00
Victor Zverovich
e825156add Move FormatParser to the internal namespace. 2014-07-08 16:20:33 -07:00
Victor Zverovich
6e5551e77a ArgInfo -> Arg 2014-07-02 06:33:25 -07:00
Victor Zverovich
5d15bdd5a5 Clean. 2014-07-01 16:23:50 -07:00
Victor Zverovich
39166f9aa9 Remove more deprecated code. 2014-07-01 09:15:20 -07:00
Victor Zverovich
2dc108b31f Remove deprecated code 🎆 🎆 🎆 2014-07-01 09:10:43 -07:00
Victor Zverovich
cff1c79469 Fix another warning. 2014-07-01 06:27:15 -07:00
Victor Zverovich
537c6c4e18 Fix a warning. 2014-07-01 06:21:51 -07:00
Victor Zverovich
eb034a0589 Suppress warnings. 2014-06-30 17:40:53 -07:00
Victor Zverovich
f4208771a8 Replace ThrowWinError with WindowsError class. 2014-06-30 17:32:08 -07:00
Victor Zverovich
a318244a1c Fix Windows build. 2014-06-30 16:48:05 -07:00
Victor Zverovich
53201033f2 Refactor error reporting API. 2014-06-30 14:26:29 -07:00
Victor Zverovich
d29e505568 Move PrintfParser from BasicWriter to the internal namespace. 2014-06-30 07:12:09 -07:00
Victor Zverovich
e63a0ff125 Deprecate c_str() and str(). 2014-06-30 06:43:53 -07:00
Victor Zverovich
21111cc954 MakeArg -> make_arg. Move printf out of Writer. 2014-06-29 19:52:26 -07:00
Victor Zverovich
a1264926a0 Writer::format -> Writer::write. Make fmt::format return string. 2014-06-29 11:51:10 -07:00
Victor Zverovich
d5b8196749 Update the API. 2014-06-28 21:56:40 -07:00
Victor Zverovich
2e03963e9e Add fmt::print. Undocument and deprecate old API. 2014-06-28 19:44:39 -07:00
Victor Zverovich
ddbd50de4a Fix build. 2014-06-28 17:44:52 -07:00
Victor Zverovich
302b8f4406 Fix MSVC build, take 2. 2014-06-24 10:46:01 -07:00
Victor Zverovich
ea99bfb902 Move ArgInfo to internal namespace and add ArgList. 2014-06-24 07:54:26 -07:00
Victor Zverovich
3e53ac2451 Fix warnings. 2014-06-23 08:48:42 -07:00
Victor Zverovich
d0587445cb Test negative precision. 2014-06-23 08:39:32 -07:00
Victor Zverovich
4099a1269b Add support for negative width. 2014-06-23 08:10:50 -07:00
Victor Zverovich
1a75ed01cd Implement dynamic precision in printf. 2014-06-23 07:16:46 -07:00
Victor Zverovich
5be9a8de3f Reduce the number of integer types that need to be handled. 2014-06-21 09:40:04 -07:00
Victor Zverovich
b1bbc90919 Use precision from FormatSpec. 2014-06-21 08:32:00 -07:00
Victor Zverovich
879838a539 Implement integer precision. 2014-06-20 07:34:02 -07:00
Victor Zverovich
cb743c0249 Parse printf format specs. 2014-06-19 07:40:35 -07:00
Victor Zverovich
1275923a68 Implement dynamic width in printf. 2014-06-17 06:53:48 -07:00
Victor Zverovich
8666ea82f7 Merge branch 'master' of github.com:cppformat/cppformat 2014-06-16 07:49:37 -07:00
Victor Zverovich
1f19b986a0 Implement printf specifications. 2014-06-16 07:49:30 -07:00
Constantine Tarasenkov
6aace693db Changes for MinGW compiler 2014-06-11 02:38:57 +04:00
Victor Zverovich
03776dd988 Add support for hexadecimal floating point format specifiers a and A. 2014-06-10 07:03:49 -07:00
Victor Zverovich
1b80148420 Implement '#' flag. 2014-06-07 08:57:55 -07:00
Victor Zverovich
bf790d2819 Ignore '0' flag for non-numeric types as printf does. 2014-06-07 07:31:25 -07:00
Victor Zverovich
80c99760fb Fix warnings. 2014-06-07 07:11:34 -07:00
Victor Zverovich
533c8214d4 Avoid unnecessary check. 2014-06-06 08:54:37 -07:00
Victor Zverovich
438eba1402 Fix parsing of flags. 2014-06-06 08:01:48 -07:00
Victor Zverovich
9aba05b76a Parse '0' flag. 2014-06-06 07:07:57 -07:00
Victor Zverovich
bf8b29fbe7 Add initial support for printf format specifications. 2014-06-06 06:38:37 -07:00
Victor Zverovich
1a2d7be3f5 Implement EXPECT_STDOUT and EXPECT_STDERR using pipes. 2014-05-03 09:48:54 -07:00
Victor Zverovich
9830c52816 Fix UTF8ToUTF16. 2014-05-01 07:20:38 -07:00
Victor Zverovich
dcd039df81 Define WIN32_LEAN_AND_MEAN. 2014-05-01 07:09:42 -07:00
Victor Zverovich
42764e54ae Fix UTF16ToUTF8. 2014-05-01 07:09:08 -07:00