Commit Graph

746 Commits

Author SHA1 Message Date
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
955062da2e Merge printf.cc into printf.h 2017-12-17 08:36:19 -08:00
Virgilio Alexandre Fornazin
5705bf1c71 Added support for pre-c++17 experimental string_view (#607)
Added support for pre-c++17 experimental string_view
2017-12-16 09:03:11 -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
7f351dec27 Decouple <locale> for better compile times 2017-12-03 09:51:59 -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
6570dc3122 Disallow formatting of multibyte strings into a wide buffer (#606) 2017-11-23 07:23:07 -08:00
Victor Zverovich
3851994ab0 Fix yet another internal compiler error in MSVC 2017-11-19 09:06:49 -08:00
Victor Zverovich
44e186512b Refactor parse context and fix warnings 2017-11-19 08:49:58 -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
Ludek Vodicka
7a9c1ba190 FMT_VARIADIC_CONST - Support for const variadic methods (#591)
FMT_VARIADIC_CONST - Support for const variadic methods
2017-10-22 08:55:40 -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
0ebdf41efa Fix compile-test 2017-10-21 08:17:00 -07:00
Victor Zverovich
170f5c671f Move headers to include/fmt 2017-10-21 07:38:49 -07:00
Victor Zverovich
b83241ff4d Make format spec parsing constexpr 2017-10-19 07:36:46 -07:00
Michael Winterberg
324415c036 Use allocator_traits if available.
This is to avoid using functionality deprecated in C++17.
2017-10-18 06:11:15 -07:00
Victor Zverovich
1b5ccf6c13 Make parse_arg_id constexpr 2017-10-15 16:54:47 -07:00
Victor Zverovich
9328a074b1 Fix handling of fixed enums in clang (#580) 2017-10-14 08:47:08 -07:00
Victor Zverovich
d5e918b61f Detect C++14 compiler support 2017-09-28 08:57:54 -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
Mário Feroldi
2a619d96dd Make format work with C++17 std::string_view (#571)
Tests for C++17 std::string_view
2017-09-20 06:21:11 -07:00
Victor Zverovich
8cbf544733 Add parse context 2017-09-17 09:05:01 -07:00
Victor Zverovich
ec4f5175f1 Replace Range with ParseContext in parse() 2017-09-16 17:07:03 -07:00
Victor Zverovich
0cda806dcc Fix compile tests 2017-09-08 11:25:49 -07:00
Victor Zverovich
fced79b0ee Get rid of old compat macros 2017-09-08 08:26:05 -07:00
Victor Zverovich
c18a4041f9 Remove conditional and to_iterator 2017-09-04 13:56:14 -07:00
Victor Zverovich
af00e4f9c9 Remove printf_arg_formatter from format.h and cleanup 2017-09-04 12:28:53 -07:00
Victor Zverovich
0fbd846561 Replace fmt::internal::make_unsigned with std::make_unsigned 2017-09-04 11:41:15 -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
3e75d3e001 Fix handling of types convertible to int 2017-09-02 07:08:19 -07:00
Alex Alabuzhev
89654cd127 to_wstring added 2017-08-27 18:52:57 +02: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
27ad6cee82 Use standard enable_if 2017-08-26 10:41:58 -07:00
Victor Zverovich
64681739fd Fix a warning 2017-08-26 09:32:37 -07:00
Victor Zverovich
016acebb56 Remove legacy code 2017-08-26 09:09:43 -07:00
Victor Zverovich
466386d5cd Suppress a warning in gmock 2017-08-26 08:50:09 -07:00
Victor Zverovich
5e0562ab51 Separate parsing and formatting 2017-08-13 13:09:02 -07:00
Victor Zverovich
032c83807f Fix a segfault in test on glibc 2.26 #551, take 2 2017-08-10 09:27:06 -07:00
Victor Zverovich
6655e804c4 Fix a segfault in test on glibc 2.26 #551 2017-08-06 20:18:04 -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
d16582a038 Move printf-related code to printf.cc 2017-07-15 09:46:18 -04:00
Mario Werner
ac5484c4e7 add alias targets with fmt namespace
For the consumer it should not matter if fmt has been added to the
project as subdirectory or via find_package. With the alias targets
the library can be always imported via fmt::fmt.
2017-05-25 14:36:16 +03:00
Mario Werner
746adc5e71 added new namespace to the header only target in the find package test 2017-05-25 14:36:16 +03:00
Bjoern Thiel
048d2aec27 CMake imported targets should be namespaced 2017-05-21 14:17:12 +03:00
Victor Zverovich
07ed421521 Fix handling of implicit conversion to integral types larger than int (#507) 2017-05-06 10:23:20 -07:00
Victor Zverovich
dcfd40a1b8 Revert #456
Revert #456 because it causes issues for known types (#495) and is not C++98-compatible.
2017-05-06 08:36:54 -07:00
Andreas Schönle
79f11dbaa7 Allow compiling and using as DLL in windows (#502)
* printf.h fixed to compile clean - need to check whether this is the right
thing to do

* fix warnings and errors in test compiles with BUILD_SHARED_LIBS

* did requested changes and added one change to allow all tests to succeed
in windows DLL
2017-05-05 14:58:09 +02:00
effzeh
73ca9948fe Fix FormatBuf implementation (#491)
Fixes #491 (and probably #480) Before, the put-area of the custom streambuf
implementation was (sometimes) incorrectly extended beyond the writeable buffer.
The new implementation is in some cases not as efficient as the old, but avoids
to write into uninitialized memory.
2017-04-08 09:07:33 -07:00
Arthur Danskin
cbac016cce %.f should have zero precision, not default precision 2017-04-08 07:18:10 -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
b4f4b7e21a Clean the buffer API (#477) 2017-03-12 09:48:21 -07:00
Victor Zverovich
f423e46835 Replace clear() with resize(0) and data_ -> store_ 2017-03-11 08:30:15 -08:00
Victor Zverovich
7175bd8ae6 Fix error on MinGW 2017-03-09 06:09:43 -08:00
Victor Zverovich
7258d1b8f3 Fix tests 2017-03-08 08:08:08 -08:00
Victor Zverovich
3610f34c70 Fix windows build 2017-03-04 07:10:54 -08:00
Victor Zverovich
6f8006c2ce Add printf overloads that takes a writer (#476) 2017-02-25 09:58:42 -08:00
Victor Zverovich
db0d54f855 Fix error on MinGW 2017-02-25 09:00:56 -08: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
4ec8860783 ArgFormatter -> arg_formatter 2017-02-18 07:46:32 -08:00