Victor Zverovich
0a96c032b9
Parameterize v*printf on string type ( #920 )
2018-10-25 13:52:08 -07:00
Victor Zverovich
61e6d2e38c
Fix core version of vformat_to
2018-10-25 06:21:41 -07:00
Victor Zverovich
ea4010d704
Merge has_to_string_view into is_string
2018-10-24 18:16:00 -07:00
Daniela Engert
1e3dcbba81
fix: 'format_to_n' compiles 'std::back_inserter' arguments
...
std::back_insert_iterators model the OutputIterator concept but differ considerably in their traits and behavior. In particular the former made compilation to fail when format_to_n is given a back_inserter as first argument. The emulation of an OutputIterator is not perfect due to the behavioural differences of back_insert_iterators (e.g. assignment always implies increment) but good enough to be used within fmt's machinery.
2018-10-24 16:45:18 -07:00
Victor Zverovich
20c708bf6d
Fix build on gcc 4.4
2018-10-24 10:52:02 -07:00
Victor Zverovich
2d2326a76d
Fix compilation with older gcc
2018-10-23 07:31:24 -07:00
Victor Zverovich
1ec0272303
Get rid of FMT_UNION
2018-10-22 20:19:31 -07:00
Daniela Engert
2c81c851b2
Adapt any string-like type to be used by {fmt} just like the standard string types already supported. The adaption is totally non-intrusive.
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-10-22 18:25:52 -07:00
Victor Zverovich
b71d3fe7ab
Remove use_grisu
2018-10-17 17:01:45 -07:00
Victor Zverovich
847abb6f8f
Fix test
2018-10-17 11:57:06 -07:00
Victor Zverovich
2924622157
Fix naming of basic_format_specs members
2018-10-17 10:13:10 -07:00
Victor Zverovich
bda5f9a556
Replace grisu2_specs with core_format_specs
2018-10-17 08:55:45 -07:00
Victor Zverovich
b1ca608bac
Remove unused empty_spec
2018-10-17 08:39:58 -07:00
Victor Zverovich
e8efdef8de
Avoid extra copy
2018-10-17 08:19:46 -07:00
Victor Zverovich
98f1c1fe87
Remove unused code
2018-10-14 15:36:45 -07:00
Victor Zverovich
50b18a3c10
Integrate Grisu
2018-10-14 14:33:25 -07:00
Victor Zverovich
4bb76ef0c7
Remove redundant definition of print
2018-10-13 11:15:46 -07:00
Victor Zverovich
ddd7caf38e
Fix locale-dependent formatting ( #905 )
2018-10-13 11:15:41 -07:00
Victor Zverovich
08a65c2282
Workaround broken constexpr in MSVC2017
2018-10-11 06:38:25 -07:00
Victor Zverovich
57983423c3
Remove signbit workaround
2018-10-10 09:41:46 -07:00
superfunc
939fbe5567
Remove basic_fixed_buffer.
...
Issue #873 indicates that this class is no longer required,
as it has been superseded by a new API.
Fixes #873
2018-10-09 06:51:01 -07:00
Victor Zverovich
2b5acad4a9
Remove redundant size argument to write_padded
2018-10-07 12:45:34 -07:00
Victor Zverovich
655ce53383
is_format_string -> is_string
2018-10-07 12:45:22 -07:00
Victor Zverovich
f5480635c0
visit -> visit_format_arg
2018-10-05 07:15:41 -07:00
Victor Zverovich
38325248e5
Count width in code points ( #628 )
2018-10-03 20:09:46 -07:00
Daniela Engert
deb901b9e4
Parameterize core functions on the type of the format string.
...
Take #2 of n
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-10-03 14:19:08 -07:00
Victor Zverovich
3f4cfa6c60
Implement UTF-8 string support
2018-09-30 15:45:58 -07:00
Victor Zverovich
f8027414f5
Impelement char8_t support
2018-09-30 12:31:25 -07:00
Victor Zverovich
76a47d41c8
Cleanup the use of FMT_CHAR
2018-09-30 08:45:57 -07:00
Victor Zverovich
5bced12421
Parameterize more functions on string type
2018-09-30 08:02:19 -07:00
Victor Zverovich
e4fea22d15
Make char8_t a strongly-typed enum
2018-09-30 07:11:37 -07:00
Victor Zverovich
66992e90d2
Clarify that writing to memory_buffer appends ( #877 )
2018-09-28 06:22:12 -07:00
Guillaume Fraux
e864acfdbd
Fix compilation with intel compilers (ICC/ICPC) v14.0
2018-09-27 07:11:23 -07:00
Daniela Engert
4cf21f58b2
constrain templated format_to on proper format string type.
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-09-26 21:05:47 -07:00
Victor Zverovich
d7f17613f5
Fix compilation on platforms with exotic double ( #878 )
2018-09-26 08:45:34 -07:00
Victor Zverovich
e4ca37ccf6
Parameterize format_to on string type ( #880 )
2018-09-25 07:47:15 -07:00
Victor Zverovich
d66fa2216e
Reduce syntactic noise
2018-09-23 14:31:14 -07:00
Daniela Engert
73c53d7833
Parameterize 'printf(rgb color, ...)' and 'vprint_rgb(rgb color, ...)' on the type of the format string.
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-09-23 09:15:27 -07:00
Victor Zverovich
ff6e46ed97
More cleanup
2018-09-22 16:00:34 -07:00
Victor Zverovich
715f2b4c00
Remove require_wchar and internalize no_formatter_error
2018-09-21 18:25:24 -07:00
Victor Zverovich
cb122a4d03
Fix format_to formatting to wmemory_buffer
2018-09-21 09:48:21 -07:00
Candy Gumdrop
9d8021f0d6
Add checks for NVIDIA's CUDA compiler
...
- Disable templated user-defined literals when compiled under nvcc
Similarly to Intel's C++ compiler, nvcc fails to compile templated UDLs
as they both share the same parsing engine (EDG C++ Front End). This
fixes building CUDA programs which make use of fmt.
2018-09-21 06:55:45 -07:00
Victor Zverovich
3f4984fb36
Clean core-test and fix linkage errors on older gcc
2018-09-19 12:24:38 -07:00
Victor Zverovich
59f555ad8f
Workaround more visit lookup issues on gcc
2018-09-15 08:46:12 -07:00
Victor Zverovich
66381e308d
Minor cleanup
2018-09-13 07:37:50 -07:00
Victor Zverovich
1fb1c4c912
Update docs
2018-09-13 07:20:43 -07:00
Victor Zverovich
fbca830dd1
Update changelog, readme and improve compat
2018-09-12 12:44:04 -07:00
Victor Zverovich
bc26fbf1b0
Move experimental color API to fmt/color.h
2018-09-12 09:04:26 -07:00
Victor Zverovich
97cc889374
Workaround a visit lookup issue in gcc 8 ( #851 )
2018-09-12 08:45:14 -07:00
Victor Zverovich
7110b46076
Optimize default formatting
2018-09-12 08:45:14 -07:00
Victor Zverovich
6ffc828a79
Phasing out null_terminating_iterator
2018-09-10 06:51:38 -07:00
Victor Zverovich
aeb6add336
Skip strchr for the common case
2018-09-09 09:08:41 -07:00
Victor Zverovich
5614289dd8
Optimize and simplify format string parsing
2018-09-09 08:41:27 -07:00
Victor Zverovich
a3ba6b4f62
Disable the fmt(...) macro by default ( #853 )
2018-09-08 09:55:41 -07:00
Victor Zverovich
8671689449
Update docs and formatting
2018-09-08 09:06:54 -07:00
Victor Zverovich
2117775747
Micro-optimize parsing
2018-09-05 07:10:50 -07:00
Victor Zverovich
be0e268468
Optimize processing of trailing '}'
2018-08-31 15:34:31 -07:00
Victor Zverovich
fbc38b9083
Pass heavy arguments by ref
2018-08-31 15:17:18 -07:00
Victor Zverovich
1489d3b7fa
Implement exponential notation
2018-08-29 18:55:57 -07:00
Victor Zverovich
dd8c5ce442
Implement more FP formatting options
2018-08-29 09:34:57 -07:00
Victor Zverovich
e483a01a0f
Implement some formatting options in Grisu
2018-08-27 17:51:49 -07:00
Victor Zverovich
f51080916e
Revert "Implement some formatting options in Grisu"
...
This reverts commit 2a952dd0b2
.
2018-08-27 17:51:27 -07:00
Victor Zverovich
2a952dd0b2
Implement some formatting options in Grisu
2018-08-26 09:51:49 -07:00
Victor Zverovich
0de44a469a
Implement exponent formatting
2018-08-26 08:12:35 -07:00
Victor Zverovich
f0d0a1ebd7
Implement Grisu2 digit generation
2018-08-25 20:45:50 -07:00
Victor Zverovich
569ac91e0b
Implement Grisu boundary computation
2018-08-25 11:39:38 -07:00
Victor Zverovich
62010520ed
Disable gnu-string-literal-operator-template warning
2018-08-22 08:12:59 -07:00
Elias Daler
18400503da
Fix C4127 warning in basic_writer<Range>::write_double
2018-08-17 07:36:38 -07:00
Victor Zverovich
9de312112a
Reformat and add a comment
2018-08-15 06:54:43 -07:00
medithe
4b868b8922
Re-enable compile-time format-string checking
...
Since the commit 691a7a9
compile-time string checking was accidently not possible anymore.
With this change, it should be possible again.
2018-08-07 07:43:47 -07:00
Victor Zverovich
4061a0d35d
Parameterize vformat to support custom char types
2018-08-05 10:44:59 -07:00
Victor Zverovich
c68bab7014
Remove broken fmt::internal::format_enum ( #818 )
2018-08-01 07:11:53 -07:00
Victor Zverovich
c684349195
Move contiguous version of format_to to fmt/core.h
2018-07-22 18:09:22 -07:00
Victor Zverovich
ffe414cad1
Add compile-time format string checks to format_to ( #783 )
2018-07-22 15:30:51 -07:00
Victor Zverovich
c178ab440f
Remove FMT_USE_RVALUE_REFERENCES
2018-07-22 15:07:53 -07:00
Victor Zverovich
35538ca66c
Merge more format overloads
2018-07-22 12:24:47 -07:00
Victor Zverovich
4f16409730
Merge format overloads using SFINAE
2018-07-22 08:06:42 -07:00
Victor Zverovich
2a4e948864
Add UTF-8 types
2018-07-22 06:36:21 -07:00
Victor Zverovich
48dff9f3c5
Update docs
2018-07-18 06:44:46 -07:00
Victor Zverovich
8615ff2acc
Micro-optimize argument retrieval
2018-07-15 07:28:31 -07:00
Victor Zverovich
e7e9578ed4
Optimize format string parsing
2018-07-14 14:27:56 -07:00
Victor Zverovich
c99a259739
Mark new functions with FMT_API ( #808 )
2018-07-14 07:43:16 -07:00
Henry Schreiner
9c32e73abf
Fixing return unreachable warning on NVCC
2018-07-09 21:33:10 -07:00
Victor Zverovich
f66ba6508a
Optimize format string parsing
2018-07-08 10:15:24 -07:00
Victor Zverovich
f21268aa72
Revert "Optimize format string parsing" because of a bug in MSVC
...
https://godbolt.org/g/rpiDgh
This reverts commit f9e9bf0231
.
2018-07-08 08:08:50 -07:00
Victor Zverovich
f9e9bf0231
Optimize format string parsing
2018-07-07 16:50:22 -07:00
Victor Zverovich
479ee2a8c6
Fix MSVC build, take 2
2018-07-04 14:24:07 -07:00
Victor Zverovich
e928b6724c
Fix MSVC 2013 build
2018-07-04 12:33:15 -07:00
Dhruv Paranjape
ec218a3ad1
Fix redefinition warning for RESET_COLOR
2018-07-04 07:52:19 -07:00
Victor Zverovich
c04fb91b03
Fix handling of user-defined types in format_to ( #793 )
2018-07-04 07:40:56 -07:00
Jonathan Müller
c6d9730ddb
Fix sign conversion warnings ( #790 )
2018-06-27 14:31:20 +02:00
Victor Zverovich
2e95823ef7
Move new color support to format.h and mark old as deprecated
2018-06-24 06:39:22 -07:00
Victor Zverovich
ab2d88ca8e
Make format_to work with basic_memory_buffer ( #776 )
2018-06-23 08:29:26 -07:00
Victor Zverovich
3abd036c47
Fix compilation on gcc 4
2018-06-23 07:18:59 -07:00
Victor Zverovich
c2f3805488
Add vformat_to_n ( #769 )
2018-06-23 07:03:00 -07:00
Victor Zverovich
0508bbc7ae
Add wchar_t overload of format_to_n ( #764 )
2018-06-13 08:24:32 +02:00
Remotion
47268ecd80
Fixed GCC version test
2018-06-10 20:35:38 +02:00
Victor Zverovich
1b8a7f8fa0
Fix postincrement in truncating and counting iterators
2018-06-07 20:20:36 +02:00
Victor Zverovich
fc6e0fe992
Fix FP formatting to a non-back_insert_iterator with sign & numeric alignment ( #756 )
2018-06-07 18:41:40 +02:00
Victor Zverovich
6322b47e60
Minor cleanup
2018-06-06 16:51:35 +02:00
Elias Kosunen
691a7a91a1
Add more compilers to CI and increase FMT_PEDANTIC warning levels ( #736 )
...
* Add a _lot_ more warnings to FMT_PEDANTIC
Fix these warnings
* Add more compilers to CI
Fix (some) of the compiler errors with them
* Enable -Werror on CI
Increase warning level on MSVC when compiling with FMT_PEDANTIC
* Add VS 2013 and 2015 to Appveyor
* Fix Appveyor tests
Formatting
* Implement requested changes
Fix some of the MSVC warnings
Implement C++11 integer_sequence
* Reintroduce appveyor-build.py
* Remove ranges-test from tests
* Remove (some) explicit warning suppressions
Fix C++ standard setting in CI
* Remove (some) explicit warning suppressions
Fix C++ standard setting in CI
* Fix test builds with C++11
* Enable pedantic warnings on tests
* Fix warnings from edits to master
* Cleanups
* Add C++11 support to ranges.h
Re-enable ranges-test
Fix a Visual Studio error about function not returning a value in printf.h
Fix a bug in .travis.yml
2018-06-06 15:57:59 +02:00
Victor Zverovich
d5c462596b
Fix formatting of more than 15 named arguments ( #754 )
2018-06-05 08:32:28 +02:00
Victor Zverovich
252f11f85d
Fix a bogus MSVC warning about unreachable code, take 2
2018-06-04 18:17:55 +02:00
Victor Zverovich
81d5663825
Fix more bogus MSVC warnings about unreachable code ( #748 )
2018-06-04 06:10:52 +02:00
Victor Zverovich
68f0ac8271
Fix a bogus MSVC warning about unreachable code
2018-06-03 08:03:56 +02:00
Victor Zverovich
b60a5c5d49
Improve floating-point formatting
2018-05-28 20:16:30 -07:00
Victor Zverovich
8dc2360b11
Fix a comment
2018-05-28 17:21:39 -07:00
Victor Zverovich
4e4b8570e5
Implement simple version of Grisu
2018-05-28 11:25:07 -07:00
Victor Zverovich
5c32aa411c
Workaround a bug in MSVC
2018-05-27 11:18:27 -07:00
Victor Zverovich
468c243ca8
Add a function to get cached power of 10
2018-05-27 10:57:26 -07:00
Victor Zverovich
2f257b7291
Implement normalization and simplify power table
2018-05-27 08:04:30 -07:00
Victor Zverovich
e2cd521b8f
Fix incorrect call to on_align in '{:}=' ( #750 )
2018-05-26 09:23:09 -07:00
Victor Zverovich
fba352a92a
Don't use UDL templates on Intel C++ compiler ( #742 )
2018-05-26 08:07:45 -07:00
Victor Zverovich
936aba5f90
Fix compilation errors on gcc 4.4
2018-05-20 07:42:09 -07:00
Victor Zverovich
69823bf852
Improve naming consistency
2018-05-19 08:59:37 -07:00
Michael Winterberg
550ef1d29d
MSVC improvements and data truncation cleanup.
...
MSVC is timid about evaluating constexpr functions unless it has to, so the "TYPES" variables end up in read-write memory even though the optimizer removes the initializer. Making TYPES constexpr causes MSVC to try harder to initialize these variables at compile time, which also ends up completely removing the (named) variable from the final compiled binary.
Fixed a data truncation warning being reported in ostream-test.
2018-05-17 18:46:31 -07:00
Victor Zverovich
728e4f5a8d
Fix docs
2018-05-16 08:26:55 -07:00
Victor Zverovich
8c2557710d
Update docs and changelog
2018-05-16 07:58:53 -07:00
Victor Zverovich
ad23270ec7
Document to_wstring
2018-05-13 09:11:29 -07:00
Victor Zverovich
838400d29b
Add inline namespace fmt::v5
2018-05-12 11:02:15 -07:00
Victor Zverovich
46c374a8a9
Fix compilation with new gcc and -std=c++11 ( #734 )
2018-05-09 20:58:05 -07:00
Elias Kosunen
a4e4f74530
Fix a -Wundef when FMT_GCC_VERSION < 600
2018-05-09 06:09:25 -07:00
Victor Zverovich
7d3de49715
Implement double to fp conversion
2018-05-06 13:37:49 -07:00
Victor Zverovich
a4c7d99f70
Add bit_cast
2018-05-06 11:52:51 -07:00
Daniela Engert
2570f1afdc
Provide more overloads for the wide string flavour
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-05-05 07:31:44 -07:00
Michael Winterberg
ca31ca13f1
Fixed arg_formatter_base::write_pointer to not mutate the format specs.
...
This fixes cases where arg_formatters are reused, like with arg_join.
2018-05-01 07:12:27 -07:00
Daniela Engert
6cd666100f
remove trailing spaces.
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-05-01 07:10:05 -07:00
Victor Zverovich
fe19c266ce
Move format_string to fmt namespace for ADL
2018-04-29 08:35:20 -07:00
Victor Zverovich
2768af2388
Add cached powers of 10
2018-04-29 06:33:05 -07:00
DanielaE
0efc8a1808
Fix compiler warning about narrowing
...
Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-04-27 06:41:43 -07:00
Victor Zverovich
221b08fd8f
Merge branch 'master' of github.com:fmtlib/fmt
2018-04-22 09:16:34 -07:00
Victor Zverovich
fa9066fe3e
context_base::begin -> out
2018-04-22 09:16:32 -07:00
Elias Kosunen
90ff31b38e
Fix a -Wundef warning on clang
...
Resolves #715
2018-04-22 09:13:55 -07:00
Victor Zverovich
cd90097ca4
Implement handmade FP
2018-04-21 17:26:24 -07:00
Victor Zverovich
822eccc3b8
Sync API with standards proposal
2018-04-21 14:29:24 -07:00
Victor Zverovich
e80aba1c2b
Remove format_float stub
2018-04-14 12:40:53 -07:00
Victor Zverovich
7b8cb3135a
Make context_base::args() public
2018-04-14 12:40:26 -07:00
Christian Parpart
48ae0506de
fixes MSVC compiler warning bloat (Visual Studio 2017, latest updates)
2018-04-11 06:53:27 -07:00
Victor Zverovich
096c4051b2
Simplify char_traits
2018-04-08 13:38:12 -07:00
Victor Zverovich
7610c5362a
Remove unused macro
2018-04-08 11:54:22 -07:00
Victor Zverovich
7d28674d3a
make_args -> make_format_args
2018-04-08 07:21:26 -07:00
Victor Zverovich
9382b76f2a
context_t -> format_context_t
2018-04-08 07:09:34 -07:00
Victor Zverovich
fd0b07a75a
(w)context -> (w)format_context
2018-04-08 07:03:44 -07:00
Victor Zverovich
26aa34f319
basic_context -> basic_format_context
2018-04-08 06:45:21 -07:00
Victor Zverovich
0829cab8f2
Remove from_checked
2018-04-07 15:21:48 -07:00
Victor Zverovich
cb7bbc6224
Improve checked iterator support
2018-04-07 15:11:34 -07:00
Victor Zverovich
5079f924d6
Fix a narrowing warning
2018-04-07 14:42:09 -07:00
Victor Zverovich
5859e58ba1
Fix msvc warnings
2018-04-04 21:11:31 -07:00
Victor Zverovich
9d4efd7aa2
Iterator Wars VI: Return of the checked iterator
2018-04-04 20:15:02 -07:00
Victor Zverovich
23759b2688
basic_arg -> basic_format_arg, arg_store -> format_arg_store
2018-04-04 07:38:21 -07:00