Louis Dionne
b0e5965d71
Properly constrain the basic_json conversion operator
...
Fixes #2491
2021-07-19 11:16:27 -04:00
Niels Lohmann
3e4723a49f
🔨 remove noexcept annotation
2021-07-15 21:49:09 +02:00
Niels Lohmann
149ded856f
♻️ simplify destroy() function for primitive types
2021-07-15 12:46:48 +02:00
Niels Lohmann
a711e1f5a7
🚨 fix warnings
2021-07-13 15:37:57 +02:00
Niels Lohmann
3bb9467073
♻️ move capacity check to set_parent function
2021-07-13 15:27:27 +02:00
Niels Lohmann
bc7e8faa4f
🔥 remove duplicated line
2021-07-12 19:21:07 +02:00
Niels Lohmann
b0730f29cf
🐛 fix logics
2021-07-12 15:24:06 +02:00
Niels Lohmann
d40e98ecef
🐛 fix assertion failure #2838
2021-07-12 13:38:28 +02:00
David Pfahler
aa849a2275
Merge branch 'nlohmann:develop' into without-io
2021-06-14 08:22:49 +02:00
David Pfahler
ae9bbbc941
include io only if JSON_NO_IO is not set for #2728
2021-05-31 14:26:45 +02:00
Niels Lohmann
cdfe865486
📝 add documentation for numbers
2021-04-28 20:33:05 +02:00
Niels Lohmann
a34e011e24
Merge pull request #2576 from AnthonyVH/non_default_constructable_stl_containers
...
Add support for deserialization of STL containers of non-default constructable types (fixes #2574 ).
2021-04-25 15:22:37 +02:00
David Pfahler
1a1381f071
Fixes #2728
...
includes some macros to be defined for using without file io.
2021-04-21 10:24:01 +02:00
raduteo
35d79203ec
Update json.hpp
2021-04-12 19:47:02 -04:00
Anthony VH
333612ce35
Merge remote-tracking branch 'upstream/develop' into non_default_constructable_stl_containers
2021-03-24 12:33:57 +01:00
Niels Lohmann
6f551930e5
🚨 add new CI and fix warnings ( #2561 )
...
* ⚗️ move CI targets to CMake
* ♻️ add target for cpplint
* ♻️ add target for self-contained binaries
* ♻️ add targets for iwyu and infer
* 🔊 add version output
* ♻️ add target for oclint
* 🚨 fix warnings
* ♻️ rename targets
* ♻️ use iwyu properly
* 🚨 fix warnings
* ♻️ use iwyu properly
* ♻️ add target for benchmarks
* ♻️ add target for CMake flags
* 👷 use GitHub Actions
* ⚗️ try to install Clang 11
* ⚗️ try to install GCC 11
* ⚗️ try to install Clang 11
* ⚗️ try to install GCC 11
* ⚗️ add clang analyze target
* 🔥 remove Google Benchmark
* ⬆️ Google Benchmark 1.5.2
* 🔥 use fetchcontent
* 🐧 add target to download a Linux version of CMake
* 🔨 fix dependency
* 🚨 fix includes
* 🚨 fix comment
* 🔧 adjust flags for GCC 11.0.0 20210110 (experimental)
* 🐳 user Docker image to run CI
* 🔧 add target for Valgrind
* 👷 add target for Valgrind tests
* ⚗️ add Dart
* ⏪ remove Dart
* ⚗️ do not call ctest in test subdirectory
* ⚗️ download test data explicitly
* ⚗️ only execute Valgrind tests
* ⚗️ fix labels
* 🔥 remove unneeded jobs
* 🔨 cleanup
* 🐛 fix OCLint call
* ✅ add targets for offline and git-independent tests
* ✅ add targets for C++ language versions and reproducible tests
* 🔨 clean up
* 👷 add CI steps for cppcheck and cpplint
* 🚨 fix warnings from Clang-Tidy
* 👷 add CI steps for Clang-Tidy
* 🚨 fix warnings
* 🔧 select proper binary
* 🚨 fix warnings
* 🚨 suppress some unhelpful warnings
* 🚨 fix warnings
* 🎨 fix format
* 🚨 fix warnings
* 👷 add CI steps for Sanitizers
* 🚨 fix warnings
* ⚡ add optimization to sanitizer build
* 🚨 fix warnings
* 🚨 add missing header
* 🚨 fix warnings
* 👷 add CI step for coverage
* 👷 add CI steps for disabled exceptions and implicit conversions
* 🚨 fix warnings
* 👷 add CI steps for checking indentation
* 🐛 fix variable use
* 💚 fix build
* ➖ remove CircleCI
* 👷 add CI step for diagnostics
* 🚨 fix warning
* 🔥 clean Travis
2021-03-24 07:15:18 +01:00
Niels Lohmann
74cc0ab470
♻️ remove diagnostics_t class
2021-01-25 13:47:50 +01:00
Niels Lohmann
e23af7434d
🚨 fix warnings
2021-01-17 13:32:26 +01:00
Niels Lohmann
e9d641130d
🐛 proper JSON Pointer escape in diagnostic messages
2021-01-16 15:33:05 +01:00
Niels Lohmann
7633a21e6c
💚 fix build
2021-01-15 16:58:05 +01:00
Niels Lohmann
b0d8628c49
👌 address comments
2021-01-15 16:54:00 +01:00
Niels Lohmann
f8037660d0
♻️ add iterator set_parent function
2021-01-14 22:43:52 +01:00
Niels Lohmann
a77621687a
📝 fix comment
2021-01-14 21:56:19 +01:00
Niels Lohmann
b9d3aa4067
♻️ split set_parent function
2021-01-14 21:55:49 +01:00
Anthony VH
6eb37e9b78
Only add conditional constexpr to get() for >= C++14 to work around errors on older compilers.
2021-01-14 12:41:30 +01:00
Anthony VH
fbf6df63d9
Enable member function calls in trailing return decltype expressions for older compilers.
2021-01-13 00:12:51 +01:00
Anthony VH
6ef1614fa9
Refactor json::get() to use priority_tag.
2021-01-12 18:28:47 +01:00
Niels Lohmann
ff57bdcc8b
🐛 fix invariants
2021-01-10 22:40:50 +01:00
Niels Lohmann
9d0150c234
♻️ simplify code
2021-01-10 15:04:14 +01:00
Niels Lohmann
a83404525e
🚨 fix warnings
2021-01-10 13:39:36 +01:00
Niels Lohmann
e160749003
♻️ move diagnostic code in header
2021-01-09 19:21:18 +01:00
Niels Lohmann
43cd5c8a4d
👌 fix constructor
2021-01-08 18:00:23 +01:00
Niels Lohmann
d4a91b7445
👌 clean operator[]
2021-01-08 11:29:28 +01:00
Niels Lohmann
e4af1ddb18
👌 fix operator[]
2021-01-08 11:21:41 +01:00
Niels Lohmann
04a0a07159
👌 fix move constructor and move assignment
2021-01-08 11:21:03 +01:00
Niels Lohmann
0617bd248d
👌 fix operator[]
2021-01-08 11:10:24 +01:00
Niels Lohmann
ddc3bb1992
👌 remove unnecessary assignment from destructor
2021-01-08 11:09:58 +01:00
Niels Lohmann
7cdf34b21e
Merge branch 'develop' of https://github.com/nlohmann/json into diagnostics
2021-01-08 10:20:34 +01:00
Niels Lohmann
085d497bf7
📄 update copyright year
2021-01-03 20:28:06 +01:00
Niels Lohmann
294fa343d5
🐛 fix bug in move constructor
2021-01-03 20:06:32 +01:00
Niels Lohmann
ec0b1798bc
🚧 implement more parent relations
2021-01-02 21:36:11 +01:00
Niels Lohmann
7323a8eb4e
🚧 add tests
2021-01-02 16:13:04 +01:00
Niels Lohmann
c6e7fa21ed
🚧 fix preprocessor check
2021-01-02 13:58:05 +01:00
Niels Lohmann
7b047861b0
🚧 add diagnostics to exceptions
2021-01-02 13:44:41 +01:00
Niels Lohmann
a4d491e22d
🚧 better diagnostics
2021-01-01 17:23:10 +01:00
Alexander Karzhenkov
cd7acc1dc5
Include <string_view> in "nlohmann/json.hpp" when C++17 is used
2020-12-20 19:40:36 +05:00
Niels Lohmann
5cc5285fe8
🚨 fix shadowing warning
2020-12-15 22:15:36 +01:00
Niels Lohmann
9d726c25d5
♻️ remove "#define private public"
2020-08-12 13:30:06 +02:00
Niels Lohmann
824d55bf26
📝 fix documentation #1668
2020-08-10 09:24:11 +02:00
Niels Lohmann
b3e5cb7f20
🔖 set version to 3.9.1
2020-08-06 13:45:29 +02:00
Niels Lohmann
e110667d21
🔖 set version to 3.9.0
2020-07-27 15:48:09 +02:00
Niels Lohmann
67ed63b196
Merge pull request #2312 from nlohmann/docs
...
Update documentation
2020-07-26 10:06:01 +02:00
Niels Lohmann
fad14aabe7
📝 update output of meta function
2020-07-25 14:41:06 +02:00
Niels Lohmann
d8d499ce9b
📝 add more documentation
2020-07-24 14:35:52 +02:00
Niels Lohmann
a33c3fdf25
Merge branch 'develop' of https://github.com/nlohmann/json into issue2286
...
Conflicts:
single_include/nlohmann/json.hpp
2020-07-23 12:30:07 +02:00
Niels Lohmann
a048b72fe1
Merge pull request #1559 from theodelrieu/feat/explicit_conversion_operator
...
Feat/explicit conversion operator
2020-07-23 08:52:51 +02:00
Théo DELRIEU
74b446f5fd
add a switch to enable implicit conversions (defaults to true)
...
wrap implicit conversions tests around the JSON_USE_IMPLICIT_CONVERSIONS
macro
2020-07-22 10:49:01 +02:00
Niels Lohmann
8b14c9b305
🚨 fix warnings
2020-07-21 23:00:56 +02:00
Niels Lohmann
a9117828e1
🚨 fix warnings
2020-07-20 22:38:00 +02:00
Niels Lohmann
4a5277d09d
📝 update documentation
2020-07-20 14:11:43 +02:00
Niels Lohmann
7360e09830
🚧 support for UBJSON high-precision numbers #2286
2020-07-20 13:12:20 +02:00
Niels Lohmann
548e7e54c9
Merge pull request #2273 from nlohmann/issue1968
...
Add option to ignore CBOR tags
2020-07-17 13:59:55 +02:00
Niels Lohmann
5b229f4cce
⚡ hash function without allocation
2020-07-14 14:31:19 +02:00
Niels Lohmann
3952739189
✨ add CBOR tag handler #1968
2020-07-12 16:51:43 +02:00
Niels Lohmann
e316f5c5b6
Merge pull request #2258 from nlohmann/issue2179
...
Add ordered_json specialization with ordered object keys
2020-07-12 13:11:23 +02:00
Niels Lohmann
8d295235a5
🔥 remove unused boolean_operators.hpp header
2020-07-11 19:20:44 +02:00
Niels Lohmann
dc06f100be
Merge branch 'develop' of https://github.com/nlohmann/json into clang_windows
...
Conflicts:
include/nlohmann/detail/input/binary_reader.hpp
include/nlohmann/detail/input/json_sax.hpp
include/nlohmann/detail/input/lexer.hpp
include/nlohmann/detail/input/parser.hpp
include/nlohmann/detail/json_pointer.hpp
include/nlohmann/detail/output/serializer.hpp
include/nlohmann/json.hpp
single_include/nlohmann/json.hpp
2020-07-11 14:04:40 +02:00
Niels Lohmann
889f269a6c
♻️ replace further alternative operators
2020-07-11 13:51:25 +02:00
Niels Lohmann
9c21285133
Merge branch 'develop' of https://github.com/nlohmann/json into issue2179
...
Conflicts:
single_include/nlohmann/json.hpp
2020-07-11 13:20:16 +02:00
Niels Lohmann
4c7bd014d9
Merge pull request #2242 from nlohmann/issue2239
...
Make assert configurable via JSON_ASSERT
2020-07-09 15:13:12 +02:00
Niels Lohmann
e3e9ccfc02
🚑 fix regression from #2181
2020-07-08 14:02:28 +02:00
Niels Lohmann
98b1c6d302
🚩 use JSON_ASSERT(x) instead of assert(x)
2020-07-06 12:22:31 +02:00
Niels Lohmann
b04dc055b2
Merge pull request #2233 from nlohmann/issue2175
...
Add specialization of get_to
2020-07-06 07:58:52 +02:00
Niels Lohmann
c7e079cc98
🚑 add specialization of get_to #2175
2020-06-30 14:26:52 +02:00
Niels Lohmann
ad6eadeb70
📝 refine documentation of error_handler parameter
2020-06-30 13:59:43 +02:00
Niels Lohmann
ac3922c7aa
Merge branch 'develop' of https://github.com/nlohmann/json into clang_windows
...
Conflicts:
include/nlohmann/detail/input/binary_reader.hpp
include/nlohmann/detail/input/input_adapters.hpp
include/nlohmann/detail/input/lexer.hpp
include/nlohmann/detail/output/binary_writer.hpp
include/nlohmann/json.hpp
single_include/nlohmann/json.hpp
2020-06-27 13:14:48 +02:00
Niels Lohmann
3948b5b091
Merge pull request #2212 from nlohmann/comments
...
Add option to ignore comments in parse/accept functions
2020-06-27 12:44:51 +02:00
Niels Lohmann
8575fdf9ad
Merge pull request #2181 from dota17/issue#1275
...
Fix issue#1275
2020-06-23 09:23:03 +02:00
Niels Lohmann
4bfe4add20
Merge pull request #2203 from t-b/use-unsigned-indizies-for-array-index-in-json-pointer
...
Use unsigned indizies for array index in json pointer
2020-06-23 09:16:01 +02:00
Thomas Braun
ecbb2756fd
json_pointer::array_index: Use unsigned values for the array index when parsing
...
The current code uses std::stoi to convert the input string to an int
array_index. This limits the maximum addressable array size to ~2GB on
most platforms.
But all callers immediately convert the result of array_index to
BasicJsonType::size_type.
So let's parse it as unsigned long long, which allows us to have as
big arrays as available memory. And also makes the call sites nicer to
read.
One complication arises on platforms where size_type is smaller than
unsigned long long. We need to bail out on these if the parsed array
index does not fit into size_type.
2020-06-22 13:42:55 +02:00
Niels Lohmann
65e8ee985a
🔨 clean up
2020-06-22 08:59:03 +02:00
Niels Lohmann
29ad2178c6
Merge pull request #2176 from gracicot/cpp20-support-no-std-fct-templ-specialization
...
C++20 support by removing swap specialization
2020-06-21 20:39:58 +02:00
Niels Lohmann
139a0258cc
Merge branch 'develop' of https://github.com/nlohmann/json into comments
2020-06-21 12:40:21 +02:00
Niels Lohmann
4fd0d02b6f
🚧 toward an ordered_json type
2020-06-19 15:27:05 +02:00
Niels Lohmann
74520d8bb0
🚧 extend API
2020-06-17 22:03:14 +02:00
Niels Lohmann
88a37010d6
🐛 serialize 32-bit floating-point numbers as float 32 in MessagePack (0xCA) #2196
2020-06-17 21:14:23 +02:00
chenguoping
4a6c68c7eb
drop new blank line
2020-06-17 20:44:31 +08:00
chenguoping
8aaa4013a3
remove overload function, change default_value to rvalue
2020-06-17 15:05:28 +08:00
Niels Lohmann
5f862710fe
🔖 set version to 3.8.0
2020-06-14 17:16:45 +02:00
chenguoping
71830be06d
fix issue#1275
2020-06-10 19:27:28 +08:00
Niels Lohmann
8c1d26e186
📝 add documentation and example for accept function
2020-06-07 20:59:43 +02:00
Guillaume Racicot
225c8f150a
Disable std::swap specialization in C++20 and added a friend swap function
2020-06-06 11:36:39 -04:00
Niels Lohmann
bf2e714e96
🚨 fix warnings
2020-06-06 14:30:17 +02:00
Niels Lohmann
0498202a03
🎨 replace alternative operators (and, not, or)
2020-06-03 14:20:36 +02:00
Francois Chabot
b715a70673
changed macro order to satisfy clang
2020-05-28 12:26:29 -04:00
Francois Chabot
ce3143a038
use correct deprecation macro
2020-05-28 12:16:10 -04:00
Francois Chabot
d575534471
brought back the from_*(ptr, len) syntax with a deprecation warning
2020-05-28 12:13:43 -04:00
Francois Chabot
a4f1cf4d00
better parse documentation
2020-05-28 02:50:58 -04:00
Francois Chabot
76b49f9ee6
misc formatting fixes
2020-05-28 02:29:53 -04:00
Francois Chabot
f1969e60a3
reamalgamate
2020-05-27 12:56:26 -04:00