Egor Seredin
bcd9b9331a
Map not int enum to correct underlying_type ( #1286 )
...
* Map not int enum to correct underlying_type
* Use non-zero constant in TestFixedEnum
2019-08-31 06:25:38 -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
c1e97392be
Fix warnings
2019-08-11 08:44:12 -07:00
Jack Andersen
699fe8e711
Remove const qualification in compile-time checks
2019-07-15 09:20:16 +02: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
bc14c6ee20
Use the decimal point from locale
2019-07-03 17:55:00 -07:00
Victor Zverovich
c9d5a08ed8
Add the 'n' float format specifier
2019-07-03 16:36:23 -07:00
Victor Zverovich
ded0a3bb3d
Internalize undocumented basic_writer
2019-07-03 10:01:03 -07:00
Victor Zverovich
ab0ba8a9d0
Don't emit decimal point if there are no trailing digits ( #1210 )
2019-06-30 08:44:59 -07:00
Victor Zverovich
260c115908
Fix formatting of 0.0 with ( #1210 )
2019-06-30 06:54:41 -07:00
Victor Zverovich
72e519a4bd
Add formatter<std::string_view>
2019-06-22 20:26:28 -07:00
Victor Zverovich
f13906f408
back_insert_range<internal::buffer> -> buffer_range
2019-06-19 14:12:29 -07:00
Victor Zverovich
4912cff65d
Fix handling of mapped types in compile checks ( #1200 )
2019-06-16 16:06:06 -07:00
Victor Zverovich
874d6727e4
Remove workarounds for pre-C++11 compilers
2019-06-13 20:56:08 -07:00
Victor Zverovich
cbbee1b385
Fix handling of hexfloat
2019-06-12 20:53:01 -07:00
Victor Zverovich
d05d42751c
Remove old msvc workaround from arg_formatter_base and fix warning
2019-06-12 19:27:23 -07:00
Victor Zverovich
d32fe0f3f6
Fix hadling of nullptr
2019-06-12 09:22:36 -07:00
Victor Zverovich
cb4c59495e
Deprecate convert_to_int
2019-06-07 13:38:08 -07:00
Victor Zverovich
40779749ac
is_formattable -> has_formatter
2019-06-07 06:51:21 -07:00
Victor Zverovich
3fdba04924
Reduce the number of nontrivial formatter instantiations
2019-06-06 22:02:53 -07:00
Victor Zverovich
eddb84cfc0
Fix formatting of exotic characters
2019-06-03 17:08:00 -07:00
Victor Zverovich
d07cc2026b
FMT_EXPLICIT -> explicit, FMT_NULL -> nullptr
2019-05-30 07:42:36 -07:00
Victor Zverovich
afc571aedc
Document join and relax its compiler requirements
2019-05-29 11:21:05 -07:00
Victor Zverovich
67179dbc23
Remove deprecated format_decimal
2019-05-15 10:34:38 -07:00
denchat
f4dfd6e30f
Suppress all clang-target-msvc test warning in CMake and other misc fixes ( #1151 )
...
* Fix conditional `char8_t` from `format.h` and fix `-Wunused-result` of [[no_discard]] begin() when in c++17
* Suppress `-Winconsistent-dllimport` when in clang-target-msvc
* Suppress warning _CRT_SECURE_NO_WARNINGS in MSVC and -Wdeprecated-declarations
Suppress warning _CRT_SECURE_NO_WARNINGS in MSVC and -Wdeprecated-declarations of POSIX functions in Clang target MSVC.
Those functions are used by gtest.
* Remove FMT_FUNC, mark FMT_API to export
2019-05-11 11:48:27 -07:00
Victor Zverovich
ea2976e6d5
Move internal::uintptr_t test to format-impl-test ( #1152 )
2019-05-11 06:58:22 -07:00
denchat
3fd134be03
Move test_count_digits to format-impl-test and disable gtest warnings ( #1147 )
...
* This translation unit includes `gtest.h` in which using something like `strncpy`
Suppress MSVC warnings from `gtest.h` included.
Warning sample:
fmt-master\test\gtest\gtest.h(2873,10): warning: 'strncpy' is deprecated: This function or variable may be unsafe. Consider using strncpy_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details. [-Wdeprecated-declarations]
* Moving `test_count_digits` to format-impl-test then count_digits<4>(internal::uintptr_t) shall not be exported
* retaining _CRT_SECURE_NO_WARNINGS always defined should be no harms.
2019-05-07 12:09:11 -07:00
Victor Zverovich
40a7975640
Remove trailing zeros
2019-04-27 07:42:27 -07:00
Victor Zverovich
cb46397dfb
Fix typo
2019-04-27 07:13:35 -07:00
Victor Zverovich
134904c886
Re-enabled constexpr tests
2019-04-26 17:07:37 -07:00
HE, Tao
6b20863918
fmt::ptr: support unique_ptr and shared_ptr.
2019-04-18 10:12:11 -07:00
Victor Zverovich
d306585a3f
Don't inject internal names into std ( #1120 )
2019-04-17 13:25:31 -07:00
Victor Zverovich
dc94010fa5
Remove char_traits ( #1117 )
2019-04-16 17:08:24 -07:00
Victor Zverovich
5d755d0a4e
Fix handling of volatile char ( #1115 )
2019-04-14 12:34:56 -07:00
Victor Zverovich
2808395481
basic_buffer -> buffer
...
This reduces symbol sizes and gets rid of shadowing warnings.
2019-04-07 20:32:28 -07:00
Victor Zverovich
f10a7e2e46
Test exotic pointer formatting
2019-04-06 09:04:44 -07:00
Victor Zverovich
bd8177177a
Add support for platforms without uintptr_t
2019-04-06 08:11:03 -07:00
mwinterb
7ad3015f5b
Added missing typename to FMT_STRING. ( #1089 )
...
* Added missing typename to FMT_STRING.
This is so that FMT_STRING can be used in a template.
2019-03-20 20:37:00 -07:00
Victor Zverovich
294fd7df96
Remove isinf workaround
2019-03-17 14:49:19 -07:00
Victor Zverovich
97619e27a2
More fixed precision tests
2019-03-15 10:20:20 -07:00
Victor Zverovich
a82b3680dc
More tests and fixed precision fixes
2019-03-13 19:47:07 -07:00
Victor Zverovich
e28429ee73
Prevent overflow with zero precision
2019-03-13 10:46:25 -07:00
Victor Zverovich
8407f4cb24
Round close to zero fixed precision
2019-03-09 15:18:34 -08:00
Victor Zverovich
49d244c065
Don't emit more than precision digits ( #1072 )
2019-03-09 13:53:23 -08:00
Michael Winterberg
d8434baa03
Declare the size of RESET_COLOR.
...
This is so that the format with a text_tyle will compile even if
header-only mode isn't enabled. Addresses #1063 .
2019-03-06 09:41:45 -10:00
gawain
79b79f329e
Add support for '%' type to output floating point values as a
...
percentage.
This helps with compatibility with Python's format strings.
2019-03-05 17:36:20 -08:00
Alexander Bolz
287eaab3b2
Increment output iterator in basic_writer::write for character types ( #1056 )
2019-02-26 12:16:34 -10:00
Victor Zverovich
442fa1bd46
Decouple format and parse contexts
2019-02-09 20:39:37 -08:00
Victor Zverovich
744e66bb08
Deprecate format_context::parse_context()
2019-02-09 16:15:20 -08:00
Victor Zverovich
355eb6d29a
Enable grisu for shortest roundtrip (default) formatting
2019-02-03 10:38:28 -08:00
Elias Kosunen
7fbbfed8c6
Fix warnings caused by usage of deprecated functionality
2019-02-02 05:48:39 -08:00
Victor Zverovich
06c005b7b0
Clarify that compile-time checks don't support named arguments
2019-01-27 10:10:13 -08:00
Victor Zverovich
5f1ceebc7f
Make formatter<T> override ostream<< for templates ( #952 )
2019-01-21 09:42:55 -08:00
Victor Zverovich
83f052930a
Add code from p0645
2019-01-20 15:12:01 -08:00
Victor Zverovich
58b6f8db48
Format the code using clang-format
2019-01-13 06:58:20 -08:00
stryku
9a777b9e1c
Implemented fmt::prepare()
...
Implementation of fmt::prepare() function and features around it.
2019-01-12 10:53:31 -08:00
Sign Bit
0bbdca5b8b
Fix conversion warnings ( #989 )
...
* Fix sign conversion warnings
* Ignore unused local typedefs
* Remove cast reported as useless on GCC
* Remove warning on unused variable
* Enable conversion warning checking for pedantic build
* Fix sign-conversion warnings in headers
2018-12-20 06:24:19 -08:00
Victor Zverovich
8668639ae2
Get rid of null_terminating_iterator in format
2018-12-15 06:17:25 -08:00
Victor Zverovich
b31680990e
Fix a warning
2018-12-05 09:49:39 -08:00
Victor Zverovich
f2ee988105
Improve locale support
2018-11-14 12:07:39 -08:00
Victor Zverovich
1385050e26
More formatter tests
2018-11-08 16:26:55 -08:00
Victor Zverovich
03c1b110a5
Fix gcc 4.4 build
2018-11-08 12:41:55 -08:00
Victor Zverovich
cc805c6162
Test enabled formatters
2018-11-08 10:59:10 -08:00
Victor Zverovich
e01579231d
Disallow leading zeros in arg-id
2018-11-08 08:48:56 -08:00
Victor Zverovich
a23d592472
Fix check_format_string ( #925 )
2018-11-03 16:51:15 -07:00
Daniela Engert
5ee1a4bc8a
check for property 'mutable iterator' and SFINAE on it
2018-10-28 08:57:43 -07:00
XZiar
2dea780fbd
change type naming and fix sfinae bug
2018-10-28 06:00:55 -07:00
XZiar
b98e8301d5
add non-char support for compile-time format check
2018-10-28 06:00:55 -07:00
Victor Zverovich
ccd3e8bbf3
Make is_constructible public ( #918 )
2018-10-27 17:10:19 -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
f0328f8e36
Use char_traits::length in string_view ctor ( #914 )
2018-10-24 15:21:21 -07:00
Victor Zverovich
20c708bf6d
Fix build on gcc 4.4
2018-10-24 10:52:02 -07:00
Victor Zverovich
846c644e84
Workeround broken sprintf in MSVC
2018-10-19 07:30:59 -07:00
Victor Zverovich
13d472bd8c
Compute output size for grisu
2018-10-18 17:16:50 -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
ddd7caf38e
Fix locale-dependent formatting ( #905 )
2018-10-13 11:15:41 -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
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
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
Guillaume Fraux
e864acfdbd
Fix compilation with intel compilers (ICC/ICPC) v14.0
2018-09-27 07:11:23 -07:00
Victor Zverovich
e4ca37ccf6
Parameterize format_to on string type ( #880 )
2018-09-25 07:47:15 -07:00
Victor Zverovich
cb122a4d03
Fix format_to formatting to wmemory_buffer
2018-09-21 09:48:21 -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
7110b46076
Optimize default formatting
2018-09-12 08:45:14 -07:00
Victor Zverovich
dd8c5ce442
Implement more FP formatting options
2018-08-29 09:34:57 -07:00
Victor Zverovich
46484da711
Fix a warning
2018-08-29 07:00:24 -07:00
Victor Zverovich
569ac91e0b
Implement Grisu boundary computation
2018-08-25 11:39:38 -07:00
Victor Zverovich
c68bab7014
Remove broken fmt::internal::format_enum ( #818 )
2018-08-01 07:11:53 -07:00
Victor Zverovich
2a4e948864
Add UTF-8 types
2018-07-22 06:36:21 -07:00
MikePopoloski
d778bded95
Make line in tests fit within 80chars
2018-07-20 17:07:23 -07:00
MikePopoloski
b1d10a2884
Add support for dynamic arg sets
...
This allows construction of basic_format_args from a dynamic set of arguments. The syntax is a little clunky and could probably be improved but this at least enables the functionality.
2018-07-20 17:07:23 -07:00
Victor Zverovich
cf2719bd12
Add support for types explicitly convertible to wstring_view
2018-07-18 19:12:10 -07:00
Victor Zverovich
50584f42b4
Test formatting of an object with templated conversion to string-like
2018-07-18 16:24:46 -07:00
Victor Zverovich
73bed45b7a
Add support for types explicitly convertible to fmt::string_view
2018-07-18 14:42:26 -07:00
Victor Zverovich
e7e9578ed4
Optimize format string parsing
2018-07-14 14:27:56 -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
c04fb91b03
Fix handling of user-defined types in format_to ( #793 )
2018-07-04 07:40:56 -07:00
Victor Zverovich
ab2d88ca8e
Make format_to work with basic_memory_buffer ( #776 )
2018-06-23 08:29:26 -07:00
Remotion
ce500635c7
Renamed enum color to colors.
...
Added enum colors conversion to rgb struct.
Added colors_test.cpp.
Removed print_colored.
Renamed enum colors back to color.
Removed unnecessary inline keyword.
Removed print_rgb.
2018-06-23 06:14:44 -07:00
Victor Zverovich
0508bbc7ae
Add wchar_t overload of format_to_n ( #764 )
2018-06-13 08:24:32 +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
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
e2cd521b8f
Fix incorrect call to on_align in '{:}=' ( #750 )
2018-05-26 09:23:09 -07:00
Victor Zverovich
edd5f1445d
Fix compilation errors on gcc 4.4
2018-05-20 09:09:03 -07:00
Victor Zverovich
69823bf852
Improve naming consistency
2018-05-19 08:59:37 -07:00
Victor Zverovich
d940fa679c
Disable unsafe implicit conversion to std::string ( #729 )
2018-05-19 07:14:27 -07:00
Victor Zverovich
838400d29b
Add inline namespace fmt::v5
2018-05-12 11:02:15 -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
Victor Zverovich
fa9066fe3e
context_base::begin -> out
2018-04-22 09:16:32 -07:00
Victor Zverovich
7d28674d3a
make_args -> make_format_args
2018-04-08 07:21:26 -07:00
Victor Zverovich
fd0b07a75a
(w)context -> (w)format_context
2018-04-08 07:03:44 -07:00
Victor Zverovich
5859e58ba1
Fix msvc warnings
2018-04-04 21:11:31 -07:00
Victor Zverovich
1e747f603f
Fix msvc warnings
2018-04-04 20:57:02 -07:00
Victor Zverovich
23759b2688
basic_arg -> basic_format_arg, arg_store -> format_arg_store
2018-04-04 07:38:21 -07:00
Victor Zverovich
3cf0526316
Return output iterator to the end from format_to_n
2018-03-30 08:20:12 -10:00
Victor Zverovich
174087bfdb
Implement format_to_n
2018-03-29 15:13:10 -10:00
Victor Zverovich
050f3f1f0e
Remove parts of obsolete write API
2018-03-29 07:36:37 -10:00
Victor Zverovich
6957d28cfb
Detect string_view on libc++ ( #686 )
2018-03-26 06:50:22 -10:00
Victor Zverovich
8c29459eda
Fix handling of empty string_view ( #689 )
2018-03-21 09:01:51 -07:00
Victor Zverovich
3da71d51e0
Move source files to the src directory
2018-03-21 07:50:59 -07:00
Victor Zverovich
7db0e94b9e
Fix handling of numeric alignment with no width ( #675 )
2018-03-11 21:04:42 -04:00
Victor Zverovich
80e57c7a3d
Update to new naming conventions
2018-03-07 07:36:13 -08:00
Victor Zverovich
f1ede6380b
Make inline_buffer_size public and update docs
2018-03-04 10:33:42 -08:00
Victor Zverovich
86a9bc8291
Cleanup
2018-03-04 09:16:51 -08:00
Victor Zverovich
5281ea6ad2
do_vformat_to -> vformat_to and update docs
2018-03-04 06:40:43 -08:00
Victor Zverovich
418659adbe
Fix compilation errors on gcc 4.4
2018-03-03 14:04:59 -08:00
Victor Zverovich
81074c7048
Fix more compilation errors on gcc 4.6
2018-02-28 05:23:25 -08:00
Victor Zverovich
1b4525384b
Fix more compilation errors on gcc 4.6
2018-02-28 05:09:24 -08:00
Victor Zverovich
4d35f94133
Always use fallback string_view to pass format string ( #664 )
2018-02-24 18:19:30 +00:00
Victor Zverovich
0565d65461
Fix gcc 7.2 issue
2018-02-24 09:29:15 +00:00
Lars Gullik Bjønnes
ea06f021f8
test: comment out one FormatStringErrors constexpr test
...
GCC 7.3 complains that this is not a compile time constant.
test/format-test.cc: In member function ‘virtual void FormatTest_FormatStringErrors_Test::TestBody()’:
test/format-test.cc:1919:3: error: non-constant condition for static assertion
static_assert(test_error<__VA_ARGS__>(fmt, error), "")
^
test/format-test.cc:1924:3: note: in expansion of macro ‘EXPECT_ERROR’
EXPECT_ERROR("{0:s", "unknown format specifier", Date);
^~~~~~~~~~~~
2018-02-24 08:20:20 +00:00
Lars Gullik Bjønnes
5b49177352
test: Initialize some local variables
...
GCC 7.3 complains about uninitialized varaibles in constexpr context.
2018-02-24 08:20:20 +00:00
Victor Zverovich
24d249b0b4
Fix formatting of objects convertible to string_view
2018-02-19 20:25:56 +00:00
Victor Zverovich
18ac98700e
Fix formatting of objects convertible to std::string
2018-02-17 12:57:18 +00:00
Victor Zverovich
ce4a65ffea
Add pointer support to basic_writer
2018-02-17 09:38:46 +00:00
Victor Zverovich
8ed264fcd4
Rename type enum constants to prevent collision with poorly written C libs ( #644 )
2018-02-16 17:20:33 +00:00
Victor Zverovich
affb35cfb9
Replace using with typedef for compatibility with gcc-4.6
2018-02-11 09:23:47 -08:00
Victor Zverovich
d8ef8a9e9b
Cleanup
2018-02-11 06:24:22 -08:00
Victor Zverovich
0b635c9dc5
Fix handling of fixed enums in clang ( #580 )
2018-02-10 06:17:42 -08:00
Victor Zverovich
67e070fe5a
Make format work with C++17 std::string_view ( #571 )
2018-02-07 08:14:54 -08:00
Victor Zverovich
2f13d41e30
Add to_wstring
2018-02-07 07:08:14 -08:00
Victor Zverovich
1f57243b49
Relax constexpr requirements
2018-02-04 08:52:43 -08:00
Victor Zverovich
dc5403612e
Conditionally compile constexpr
2018-02-04 08:21:31 -08:00
Victor Zverovich
1c7b751d70
Fix handling of implicit conversion to integral types larger than int
2018-02-01 16:42:15 -08:00
Victor Zverovich
a980d3b46b
Add fmt::join to format ranges ( #466 )
2018-01-27 16:04:45 -08:00
Victor Zverovich
64b349aee2
More iterator support & fmt::count
2018-01-17 22:04:24 -08:00
Victor Zverovich
322736d3bb
Add support for arbitrary output iterators
2018-01-15 12:46:44 -08:00
Victor Zverovich
c1d137ed5f
Add support for nonconiguous iterators
2018-01-15 11:30:53 -08:00
Victor Zverovich
f6fd38bb3a
More iterator support
2018-01-15 08:48:37 -08:00
Victor Zverovich
c2fecb9b2a
Clean API
2018-01-14 14:15:59 -08:00
Victor Zverovich
9a53a706fc
Add support for back_insert_iterator
2018-01-14 13:12:26 -08:00
Victor Zverovich
91ee9c9acd
Return iterator from the format method
2018-01-14 11:00:27 -08:00
Victor Zverovich
67928eae28
Don't inherit context from parse_context
2018-01-14 09:27:40 -08:00
Victor Zverovich
217e7c76f1
Pass ranges by value
2018-01-14 08:13:48 -08:00
Victor Zverovich
22994c62f7
Decouple arg_formatter_base from buffer
2018-01-13 15:34:48 -08:00
Victor Zverovich
00f1450d9a
Update tesmplate parameter names
2018-01-13 14:57:43 -08:00
Victor Zverovich
3a2e89e134
Reduce dependency on buffer
2018-01-13 12:57:27 -08:00
Victor Zverovich
c095445394
Replace buffer with range
2018-01-10 22:41:23 -08:00
Victor Zverovich
3663414053
Parameterize basic_writer on buffer type
2017-12-26 09:00:22 -08:00
Victor Zverovich
6f2769d0b4
Revert "Added support for format string containing '\0' in _format udl ( #619 ) ( #620 )"
...
This reverts commit 3aaa25fa70
for
reasons discussed in #622 .
2017-12-23 08:00:51 -08:00
Victor Zverovich
971fb584c3
Allow mixing named and automatic arguments
2017-12-09 08:15:13 -08:00
Victor Zverovich
94edb1a71c
Add a lightweight header for the core API
2017-12-06 07:42:42 -08:00
Artem Golubikhin
3aaa25fa70
Added support for format string containing '\0' in _format udl ( #619 ) ( #620 )
...
Added support for strings containing '\0' in udl (#619 )
2017-12-06 06:21:34 -08:00
Victor Zverovich
81bd9e8ea3
args -> format_args
2017-12-03 08:00:22 -08:00
Victor Zverovich
10e70a06c9
Improve handling of custom arguments
2017-12-02 09:44:48 -08:00
Victor Zverovich
e0243000de
arg_index -> arg_id
2017-11-26 10:05:49 -08:00
Victor Zverovich
f03a35a679
Check string specs at compile time
2017-11-24 09:54:28 -08:00
Victor Zverovich
e9da574147
Check char specs at compile time
2017-11-24 07:54:22 -08:00
Victor Zverovich
b25a029284
Check pointer type specs are compile time
2017-11-23 10:12:23 -08:00
Victor Zverovich
c8a9d902dd
Check floating-point type specifiers
2017-11-23 09:14:37 -08:00
Victor Zverovich
3851994ab0
Fix yet another internal compiler error in MSVC
2017-11-19 09:06:49 -08:00
Victor Zverovich
e7e270f511
Test error on invalid type spec and remove unused alias
2017-11-19 08:25:34 -08:00
Victor Zverovich
c523dd584f
Use error handler to report errors
2017-11-19 07:36:01 -08:00
Victor Zverovich
5a32e64b05
More tests
2017-11-19 07:03:12 -08:00
Victor Zverovich
dc104cbaaa
Workaround internal compiler errors in MSVC
2017-11-18 09:05:05 -08:00
Victor Zverovich
39411504a5
More tests
2017-11-18 08:16:59 -08:00
Victor Zverovich
62af25dca8
Workaround yet another MSVC internal error
2017-11-18 06:31:47 -08:00
Victor Zverovich
594bd8feba
More tests
2017-11-16 06:55:49 -08:00
Victor Zverovich
f2b52bba05
More tests
2017-11-15 07:06:03 -08:00
Victor Zverovich
dfdb1adea5
More tests
2017-11-12 10:03:39 -08:00
Victor Zverovich
7967c2f874
Disable test that triggers an MSVC bug
2017-11-12 09:47:15 -08:00
Victor Zverovich
18a0b94b0e
Fix overflow check
2017-11-12 09:25:28 -08:00
Victor Zverovich
686ff942af
Fix compile-time parsing and add more tests
2017-11-11 11:40:56 -08:00
Victor Zverovich
5b95b5d77c
Test compile-time errors
2017-11-11 10:28:05 -08:00
Victor Zverovich
246bdafc74
Add FMT_STRING macro for compile-time strings
2017-11-11 07:39:12 -08:00
Victor Zverovich
e805543341
Remove FMT_USE_VARIADIC_TEMPLATES
2017-11-11 07:02:58 -08:00
Victor Zverovich
a03842b0d5
More compile-time checks
2017-11-05 13:26:19 -08:00
Victor Zverovich
8ca6e76dbc
Detect user-defined literal templates
2017-11-04 08:23:24 -07:00
Victor Zverovich
db9ffa1405
Make parse_format_string constexpr
2017-10-29 07:32:14 -07:00
Victor Zverovich
d29c7c3aca
Workaround a bug in MSVC
2017-10-25 07:37:50 -07:00
Victor Zverovich
aadb38a5e6
Make specs_checker constexpr
2017-10-24 07:46:30 -07:00
Victor Zverovich
529d88ce95
Make dynamic_format_specs construction constexpr
2017-10-22 10:19:09 -07:00
Victor Zverovich
d2f2a8b0ca
constexpr support of dynamic width and precision
2017-10-22 09:32:46 -07:00
Victor Zverovich
6b3840b73c
Make format_specs construction constexpr
2017-10-22 08:18:26 -07:00
Victor Zverovich
91014f0171
Naming conventions
2017-10-22 06:43:41 -07:00
Victor Zverovich
b83241ff4d
Make format spec parsing constexpr
2017-10-19 07:36:46 -07:00
Victor Zverovich
1b5ccf6c13
Make parse_arg_id constexpr
2017-10-15 16:54:47 -07:00
Victor Zverovich
643fb0662e
Check for argument indexing switch
2017-09-27 21:18:37 -07:00
Victor Zverovich
d45544d14e
Fix width handling in dynamic formatting
2017-09-27 19:04:15 -07:00
Victor Zverovich
ec4f5175f1
Replace Range with ParseContext in parse()
2017-09-16 17:07:03 -07:00
Victor Zverovich
8a2bc0ab1b
Add nullptr support
2017-09-04 11:10:08 -07:00
Victor Zverovich
80505995d0
Allow delayed type checking
2017-09-04 09:33:22 -07:00
Victor Zverovich
47c84d7974
Move part of write API (spec factories) to a separate header
2017-08-27 09:08:44 -07:00
Victor Zverovich
20168147dd
Add ptr, a helper function for pointer formatting
2017-08-27 08:41:28 -07:00
Victor Zverovich
5e0562ab51
Separate parsing and formatting
2017-08-13 13:09:02 -07:00
Victor Zverovich
1102d46508
Make format spec parsing context-independent
2017-07-30 08:58:24 -07:00
Victor Zverovich
45911770c5
Separate parsing and formatting in extension API
2017-07-29 07:50:16 -07:00
Victor Zverovich
2f4f49fd60
Switch from cstring_view to string_view
2017-07-22 08:24:37 -07:00
Victor Zverovich
12252152ac
CStringRef -> cstring_view
2017-03-26 15:13:10 -07:00
Victor Zverovich
32ec13f149
Switch to C++ locale
2017-03-25 08:20:06 -07:00
Victor Zverovich
c333dca065
Follow standard naming conventions
2017-02-21 06:56:26 -08:00
Victor Zverovich
6a2ff287b2
Follow standard naming conventions
2017-02-19 08:05:41 -08:00
Victor Zverovich
eedfd07f8b
internal::MemoryBuffer -> basic_memory_buffer
2017-02-18 09:13:12 -08:00
Victor Zverovich
50e716737d
StringRef -> string_view, LongLong -> long_long
2017-02-18 07:34:52 -08:00
Victor Zverovich
c2f021692f
Merge ArrayWriter into FixedBuffer
2017-02-17 06:09:26 -08:00
Victor Zverovich
fefaf07b6f
Pass buffer instead of writer to format_value
2017-02-14 19:39:34 -05:00
Victor Zverovich
a13b96ed88
Simplify API
2017-02-05 06:54:03 -08:00
Victor Zverovich
624c58682d
Simplify API
2017-02-05 06:41:39 -08:00
Victor Zverovich
296e9cada2
FrmatSpec -> format_spec
2017-01-28 12:51:35 +00:00
Victor Zverovich
984a102921
Remove IntFormatSpec and StrFormatSpec
2017-01-28 04:26:48 -08:00
Victor Zverovich
4863730eca
Remove pad
2017-01-22 19:11:47 -08:00
Victor Zverovich
aea5d3ab00
Improve compatibility with older gcc and update tests
2017-01-22 11:50:52 -08:00
Victor Zverovich
ec15ef7b7b
Replace operator<< with write function
2017-01-22 10:00:34 -08:00
Victor Zverovich
8428621ddc
BasicWriter -> basic_writer
2016-12-30 12:26:12 -08:00
Victor Zverovich
422236af7c
Don't erase writer type
2016-12-28 07:55:33 -08:00
Victor Zverovich
f05888692c
Fix handling of unpacked args ( #437 )
2016-12-23 08:24:48 -08:00
Victor Zverovich
6cba8fe9ba
Move stuff out of internal::Value
2016-12-15 07:51:40 -08:00
Victor Zverovich
284297019f
Merge BasicArgFormatter and ArgFormatter
2016-11-20 09:36:27 -08:00
Victor Zverovich
d4084ac5b1
Get rid of ArgVisitor
2016-11-20 09:11:13 -08:00
Victor Zverovich
55a1ac5035
Fix test
2016-11-07 08:55:40 -08:00
Victor Zverovich
85793a18cd
Simplify API
2016-11-06 19:27:14 -08:00
Victor Zverovich
9998f66f8c
Replace formatter with context
2016-11-06 18:59:17 -08:00
Victor Zverovich
2bba420337
Pass writer directly to format_value ( #400 )
2016-10-26 17:54:11 -07:00
Victor Zverovich
b656a1c133
Make value the second argument to format_value
2016-10-25 06:19:19 -07:00
Victor Zverovich
edf98792a5
Pass writer to format_value
2016-10-25 05:55:40 -07:00
Victor Zverovich
f85d5f4dac
BasicFormatter -> basic_formatter
2016-10-22 08:04:20 -07:00
Victor Zverovich
18dfa257d0
Pass correct formatters to make_format_args
2016-10-21 06:46:21 -07:00
Victor Zverovich
dafbec7553
Fix type safety when using custom formatters ( #394 )
2016-10-07 08:37:06 -07:00
Victor Zverovich
65a8c2c343
format_arg -> format_value
2016-10-02 08:49:10 -07:00
Victor Zverovich
209a1d58bf
Get rid of macros
2016-08-27 09:06:21 -07:00