Commit graph

4030 commits

Author SHA1 Message Date
Jaakko Moisio 467f622c65 Fix compilation of input_adapter(container) in edge cases
This fixes a compilation issue with the library if trying to use containers that
don't have non-member `begin()` and `end()` functions via ADL.

This patch extends the `using std::begin` and `using std::end` declarations to
also cover the return type deduction of the input_adapter() template
specialization for containers. The previous implementation only enabled the
detection of `std::begin()` and `std::end()` in the function body, making the
specialization unusable for container types that only have member `begin()` and
`end()` functions.

It is not typical to have `using` declarations in the namespace scope in a
header file. But a C++11 implementation can't rely on fully automatic return
type deduction, and needs to rely on ADL enabled helper templates. To prevent
the using declarations leaking, they are enclosed in another nested namespace.
2020-12-28 22:21:02 +01:00
Niels Lohmann 5dd06714b1
🐛 allow parsing from std::byte containers #2546 2020-12-28 11:31:21 +01:00
Niels Lohmann dfedefb993
🚨 fix warnings 2020-12-26 17:56:16 +01:00
Alexander Karzhenkov 903b8a6e04 Build as "Debug" for coverage test 2020-12-26 21:14:16 +05:00
Niels Lohmann f15d447522
🚨 fix warnings 2020-12-26 14:55:19 +01:00
Alexander Karzhenkov 10db9184a3 Configure Travis to build "Release" instead of "Debug" 2020-12-23 20:56:13 +05:00
Alexander Karzhenkov 7092890ff1 Properly select the build type for Travis 2020-12-22 18:24:00 +05:00
Niels Lohmann f78d456075
Merge pull request #2540 from karzhenkov/disrupt-cxx17-tests
Travis doesn't run any tests in C++17 mode
2020-12-21 20:58:06 +01:00
Alexander Karzhenkov 9493f4beb1 Advance gcc library version for clang++-7 2020-12-20 23:50:28 +05:00
Alexander Karzhenkov cd7acc1dc5 Include <string_view> in "nlohmann/json.hpp" when C++17 is used 2020-12-20 19:40:36 +05:00
Alexander Karzhenkov 39b8d6bd33 Restore intentionally disrupted C++17 tests 2020-12-20 12:43:35 +05:00
Alexander Karzhenkov aae0e4959e Fix travis configuration to enable C++17 tests 2020-12-20 10:18:41 +05:00
Alexander Karzhenkov 8247a217bb Disrupt all C++17 tests to check if they are executed 2020-12-19 18:58:49 +05:00
Niels Lohmann c3c574cf96
Merge pull request #2538 from YarikTH/feature/doctest_v2.4.3
Doctest is updated to v2.4.3
2020-12-18 22:10:42 +01:00
Krylov Yaroslav a1772743a1
Doctest is updated to v2.4.3 2020-12-18 07:27:22 +03:00
Niels Lohmann 8593260044
Merge pull request #2537 from nlohmann/fix_warnings
Fix warnings
2020-12-17 21:48:16 +01:00
Niels Lohmann c026e1a475
🚨 fix warnings 2020-12-16 21:44:35 +01:00
Niels Lohmann af8c6e7aa9
Merge pull request #2533 from nlohmann/c++_future
Do not unconditionally redefine C++14 constructs
2020-12-16 20:54:09 +01:00
Niels Lohmann 5c1a5bc9c1
Merge pull request #2534 from nlohmann/clarify_license
Clarify license of is_complete_type implementation
2020-12-16 20:53:38 +01:00
Niels Lohmann 45810082d4
Merge pull request #2536 from nlohmann/shadowing
Fix a shadowing warning
2020-12-16 20:52:46 +01:00
Niels Lohmann 5cc5285fe8
🚨 fix shadowing warning 2020-12-15 22:15:36 +01:00
Niels Lohmann 94d177e09a
📄 clarify license 2020-12-14 14:58:59 +01:00
Niels Lohmann 467986fe98
♻️ do not unconditionally redefine C++14 constructs 2020-12-14 14:31:27 +01:00
Niels Lohmann 2fc1f694ad
Merge pull request #2514 from globberwops/develop
Add MAIN_PROJECT check for test and install options
2020-12-14 13:41:46 +01:00
Martin Stump 1771e9249f
Remove comment on CTest inclusion
Co-authored-by: Niels Lohmann <niels.lohmann@gmail.com>
2020-12-14 10:59:38 +01:00
Niels Lohmann 85ffc85a29
🎨 amalgamate code 2020-12-14 10:38:49 +01:00
Martin Stump ea759d0360
Compare to CMAKE_CURRENT_SOURCE_DIR for main project check 2020-12-13 20:34:51 +01:00
Niels Lohmann 97fe455ad5
Merge branch 'develop' of https://github.com/nlohmann/json into develop 2020-12-12 17:17:43 +01:00
Niels Lohmann d028eff9e1
📦 add license to include.zip #2487 2020-12-12 17:17:38 +01:00
Niels Lohmann be32cc4f5e
Merge pull request #2525 from YarikTH/feature/doctest_v2.4.1
Doctest is updated to v2.4.1
2020-12-12 15:08:55 +01:00
Niels Lohmann 47c2004f7f
Merge branch 'develop' of https://github.com/nlohmann/json into develop 2020-12-12 14:10:05 +01:00
Niels Lohmann fc4040ce9d
🔨 clean up CI 2020-12-12 14:09:50 +01:00
Krylov Yaroslav 6390fca71a
Doctest is updated to v2.4.1 2020-12-12 05:27:03 +03:00
Niels Lohmann 260be043ba
Merge pull request #2406 from leozz37/develop
📝  add CPM.Cmake example
2020-12-11 14:47:18 +01:00
Niels Lohmann 5026acd70c
Merge pull request #2444 from linev/fix_gcc48_warn
Change argument name "subtype" in byte_container_with_subtype
2020-12-11 13:46:41 +01:00
Sergey Linev 30dd0c0f09 Change underscore placement 2020-12-11 13:43:17 +01:00
Niels Lohmann 3ad6992f50
Merge pull request #2405 from karzhenkov/fix-json_ref-move
Fix move constructor of json_ref
2020-12-11 13:36:33 +01:00
Niels Lohmann e3643aadf7
Merge pull request #2447 from jbzdarkid/develop
Add asserts to suppress C28020
2020-12-11 13:27:52 +01:00
Niels Lohmann d9e2b191ad
Merge pull request #2512 from YarikTH/issue2490
Ranged insert test section is added in unit-ordered_json.cpp
2020-12-11 13:21:33 +01:00
Martin Stump 790508887e
Set MAIN_PROJECT=OFF initially 2020-12-09 12:39:44 +01:00
Martin Stump 5c589dd138
Add MAIN_PROJECT check for test and install options 2020-12-09 11:37:01 +01:00
Krylov Yaroslav 972c15f26e
ordered_map::insert(InputIt first, InputIt last) is added 2020-12-07 20:15:41 +03:00
Krylov Yaroslav 5155cc2c48
Ranged insert test section is added in unit-ordered_json.cpp 2020-12-07 19:47:41 +03:00
Niels Lohmann d8d8cbf6e0
🔨 fix site URL 2020-12-07 15:30:28 +01:00
Niels Lohmann 3322c9df6e
🔒 use HTTPS 2020-12-06 14:41:48 +01:00
jbzdarkid cde29b3a11 Merge branch 'develop' of https://github.com/nlohmann/json into develop 2020-12-03 12:47:34 -08:00
Niels Lohmann eaac918034
👷 remove clang9 CI 2020-12-02 08:58:45 +01:00
Joseph Blackman 9f45d314d5
Apply suggestions from code review
Co-authored-by: Niels Lohmann <niels.lohmann@gmail.com>
2020-11-24 11:02:58 -08:00
jbzdarkid 64ff1cf90d Add asserts to suppress C28020 2020-10-26 13:57:38 -07:00
Sergey Linev 71cb7d12da Change argument name "subtype" in byte_container_with_subtype
Fix warnings on older g++ 4.8

declaration of ‘subtype’ shadows a member of 'this'
2020-10-23 13:52:24 +02:00