Daniela Engert
d3c523e0d2
Export printf-related contexts from printf.h
2021-04-24 06:39:57 -07:00
Victor Zverovich
b9ab5c8836
Remove printf.h dependency on ostream.h
2021-04-23 10:42:57 -07:00
Daniela Engert
f4bbc54cc4
Tag official API for module export ( #2235 )
...
* functions
* classes
* UDLs
* other declarations
Export everything in namespace 'fmt' from core.h and format.h
2021-04-16 11:04:55 -07:00
Victor Zverovich
9cb347b4b2
Simplify argument formatters
2021-03-21 09:31:46 -07:00
rimathia
986fa00406
Printf get container ( #1982 )
...
* eliminate one case where basic_print_context would copy a string into a fmt::basic_memory_buffer character by character instead of using fmt::basic_memory_buffer::append
* use detail::write instead of re-implementing it
* use to_unsigned to avoid signedness conversion warnings
2020-11-12 08:37:04 -08:00
rimathia
3302fd1088
use memchr for searching for '%' in printf format string ( #1984 )
2020-11-08 10:36:00 -08:00
Victor Zverovich
92bff2fe2c
Revert "Add missing includes"
...
This reverts commit 06895a7687
.
2020-08-21 16:24:53 -07:00
Victor Zverovich
06895a7687
Add missing includes
2020-08-19 20:33:04 -07:00
Victor Zverovich
a2c4fed981
Double buffering no more
2020-07-10 20:35:14 -07:00
Victor Zverovich
936a1833c2
Add default_arg_formatter
2020-06-08 08:14:34 -07:00
rimathia
95c6ac0cc8
fix typo which caused the loss of the counting information when using a printf context with a truncating_iterator
2020-06-05 07:37:54 -07:00
Victor Zverovich
3245145a41
Remove undocumented buffer_range and output_range
2020-05-30 13:07:52 -07:00
Victor Zverovich
519571edec
Simplify arg_formatter_base
2020-05-29 14:44:18 -07:00
rimathia
8c8f74a870
fix zero flag for char types and make zero flag ignored if a precision is specified
2020-05-23 12:46:26 -07:00
rimathia
6b219a58db
fix interaction of space flag and '+' flag, as well as '-' flag and '0' flag ( #1687 )
2020-05-17 04:27:18 -07:00
rimathia
96c18b26c2
make plus flag for printf not be ignored for char argument ( #1683 )
...
* make plus flag for printf not be ignored for char argument
* clarify overwriting of alignment specifiers for printf with char argument
2020-05-15 06:45:51 -07:00
Victor Zverovich
8069265373
internal -> detail ( #1538 )
2020-05-10 07:34:30 -07:00
Victor Zverovich
7f723fbcb8
Consistently namespace qualify size_t
2020-05-07 15:59:46 -07:00
Victor Zverovich
c06851456d
Purge basic_writer
2020-05-07 15:04:48 -07:00
peterbell10
44639b11fe
Fix some warnings ( #1667 )
...
* Fix sign-conversion warning
* Add missing "extern template" declarations for non-header-only build
* Use typed enums to fix Wsigned-enum-bitfield warnings
* Consolidate FMT_HEADER_ONLY code
2020-05-07 06:14:07 -07:00
Victor Zverovich
3c114d091b
Fix a shadowing warning ( #1658 )
2020-05-01 07:00:25 -07:00
Victor Zverovich
0463665ef1
Don't access a C string past precision in printf ( #1595 )
2020-04-22 17:10:23 -07:00
Victor Zverovich
8a4630686e
Improve handling of named arguments
2020-04-14 11:56:55 -07:00
Victor Zverovich
e99809f29d
Fix ostream support in sprintf ( #1631 )
2020-04-12 07:53:17 -07:00
Victor Zverovich
7645ca0724
Clean up printf
2020-04-11 08:01:00 -07:00
Victor Zverovich
f72a905eb3
Fix handling of volatile enums
2020-03-11 08:40:57 -07:00
Victor Zverovich
c8dd9cc99d
Use type_identity to block unnecessary template argument deduction (thanks Tim Song)
2020-01-15 10:27:50 -08:00
Victor Zverovich
8cf4c52068
Apply clang-format
2019-12-21 13:10:45 -08:00
parkertomatoes
9acf89fef6
Mitigate MSVC issue with min/max macros ( #1480 )
2019-12-16 08:24:00 -08:00
Florin Iucha
72879db40e
Clean-up sign-conversion warnings in public headers
2019-12-08 16:07:55 -08:00
Victor Zverovich
3e1f70fe02
Merge write_fp into write
2019-11-20 12:20:17 -08:00
Victor Zverovich
125fc5e520
Update comment
2019-11-20 11:45:25 -08:00
Victor Zverovich
ffd05e65ed
basic_parse_context -> basic_format_parse_context per standard and document
2019-11-05 07:13:58 +00:00
Ivan Shynkarenka
21acc2af43
Fix more Visual Studio 2019 pedantic warnings ( #1371 )
...
* format-inl.h(444,1): warning C4804: '>>': unsafe use of type 'bool' in operation
format.h(2808,1): warning C4127: conditional expression is constant
* More fixes for VS2019 pedantic warnings
* Fix "conditional expression is constant" VS2019 warning in more specific way
* Use const_check to silence constexpr warning
2019-10-22 17:13:03 -07:00
Victor Zverovich
d39ebf3ff2
Optimize counting
2019-10-21 06:57:42 -07:00
Victor Zverovich
2730e90186
Fix compile error in printf with gcc9 ( #1354 )
2019-10-09 18:58:40 -07:00
Victor Zverovich
e4d6d9d7c8
Implement divmod
2019-10-09 13:40:50 -07:00
Orivej Desh
b66bb6b71f
Fix undefined in core-test and printf-test ( #1345 )
...
* Fix undefined in core-test
Fixes "reference binding to null pointer" in BufferTest.Ctor
buffer.operator[] attempts to return a reference to `buffer.ptr_[0]` when `ptr_`
in `mock_buffer<int> buffer` is null.
* Fix undefined in printf-test
Fixes "signed integer overflow" in PrintfTest.Length
This occurs in `TestLength<long long>("ll")`, since its minimum value minus one
does not fit in long long.
* Fix undefined in printf %0$
Printf counts arguments from 1.
Fixes "shift exponent -4 is negative" in PrintfTest.InvalidArgIndex.
`do_get` is called with index -1 when `basic_printf_context.arg` is called with
id 4294967295 when basic_printf_context::get_arg subtracts 1 from arg_index 0 in
the format string "%0$d".
2019-10-08 06:28:39 -07:00
Victor Zverovich
c85ae23c73
Add max_value
2019-09-08 09:21:30 -07:00
Deniz Evrenci
6de0454b42
Add support for built-in __int128 when available
2019-09-04 07:05:08 -07:00
Victor Zverovich
3f75e2b69e
Make buffer_range public and update custom formatting docs ( #1281 )
2019-08-28 06:50:20 -07:00
Victor Zverovich
dd8cc8b0ba
Disallow passing views as lvalues
2019-07-09 12:18:48 -07:00
Victor Zverovich
f6f0415b83
typedef -> using
2019-07-07 17:14:26 -07:00
Victor Zverovich
5488d0b53a
spec -> specs
2019-07-07 06:39:20 -07:00
Victor Zverovich
e4f84ee1c6
Refactor format_specs for #1109 and #940
...
Refactor `format_specs` and related APIs to support variable-width fill
(#1109 ), improve naming consistency, remove legacy setters (#940 ), and
optimize layout.
2019-07-06 20:57:40 -07:00
Victor Zverovich
c286ffc88d
int_traits -> uint32_or_64_t
2019-07-03 16:01:21 -07:00
Victor Zverovich
6952732b6c
Remove misplaced checks
2019-06-23 06:33:07 -07:00
Victor Zverovich
f13906f408
back_insert_range<internal::buffer> -> buffer_range
2019-06-19 14:12:29 -07:00
Victor Zverovich
874d6727e4
Remove workarounds for pre-C++11 compilers
2019-06-13 20:56:08 -07:00
Victor Zverovich
9d7b64a259
More cleanup
2019-06-11 22:11:47 -07:00