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
e22ce45065
🚸 improve diagnostics
2020-06-21 13:28:00 +02:00
Niels Lohmann
139a0258cc
Merge branch 'develop' of https://github.com/nlohmann/json into comments
2020-06-21 12:40:21 +02:00
Thomas Braun
f0e73163f2
json_pointer.hpp: Mention more exception in documentation
...
Forgotten in dcd3a6c6
(move the catch of std::invalid_argument into
array_index(), 2020-03-23).
2020-06-20 15:27:22 +02:00
Niels Lohmann
0fe9f23254
✨ add macros from #2175
2020-06-20 14:11:37 +02:00
Niels Lohmann
b64002bbca
♻️ extract common code to function
2020-06-19 13:24:08 +02:00
Niels Lohmann
0585ecc56b
✅ add tests for comment skipping
2020-06-19 13:10:35 +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
Niels Lohmann
e9bfcf7255
⚡ improve comment parsing
2020-06-17 14:59:47 +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
b53c6e2f81
✨ ignore comments
2020-06-16 12:28:59 +02:00
chenguoping
691fb0c57a
fix issue#2059
2020-06-16 15:35:26 +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
ae04426c85
🏁 fix for MSVC (see https://github.com/nlohmann/json/pull/2178#issuecomment-640622532 )
2020-06-08 20:07:15 +02:00
Niels Lohmann
8c1d26e186
📝 add documentation and example for accept function
2020-06-07 20:59:43 +02:00
Niels Lohmann
907803189b
🏁 fix MSVC 2015 compilation
2020-06-07 12:51:33 +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
7444c7fa25
Merge pull request #2145 from FrancoisChabot/1813-user-input
...
Fix Issue#1813: user defined input adapters
2020-06-05 14:30:39 +02:00
chenguoping
4350c5ed97
fix bug in issue#1972
2020-05-30 17:15:56 +08:00
Francois Chabot
b715a70673
changed macro order to satisfy clang
2020-05-28 12:26:29 -04:00
Francois Chabot
7646253940
fix inconsistent fwd declaration
2020-05-28 12:20:02 -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
897061c434
amalgamate
2020-05-28 10:11:19 -04:00
Niels Lohmann
61832afe15
Merge pull request #2144 from XyFreak/gcc10_type_limits
...
Fix issue#1939: Cast character to unsigned for comparison
2020-05-28 12:59:57 +02: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
Niels Lohmann
9ec0e4c25b
Merge pull request #2140 from nlohmann/issue1715
...
Respect allow_exceptions=false for binary formats
2020-05-28 07:52:26 +02:00
Francois Chabot
377995f495
forcefully exclude arrays from being interpreted as pointers
2020-05-27 18:21:38 -04:00
Francois Chabot
b9416a26aa
correct ADL lookup of arrays on Mac and Windows
2020-05-27 13:21:23 -04:00
Francois Chabot
f1969e60a3
reamalgamate
2020-05-27 12:56:26 -04:00
Francois Chabot
5684d9a498
unified input API
2020-05-27 12:40:04 -04:00
Tobias Kux
23051df2c7
Cast character to unsigned for comparison
2020-05-27 13:15:31 +02:00
Niels Lohmann
d70d06ae41
Merge pull request #2137 from dota17/MSC_VER
...
Fix issue 2112
2020-05-27 08:49:19 +02:00
Niels Lohmann
3c60a66c4c
Merge pull request #2104 from dota17/issue#2086
...
Fix issue#2086: disallow json::value_t type parameter in value()
2020-05-26 13:15:06 +02:00
chenguoping
eb50fbf926
fix issue 2112
2020-05-26 16:43:16 +08:00
Niels Lohmann
c92a696852
📝 update documentation
2020-05-22 18:21:37 +02:00
Niels Lohmann
88292d9499
🚨 remove redundant assertions
2020-05-22 14:19:07 +02:00
Niels Lohmann
225fa58f16
🚧 add fix from #1715
2020-05-20 22:20:40 +02:00
Niels Lohmann
a82c80e9af
Merge pull request #2125 from nlohmann/binary_type
...
Clean up implementation of binary type
2020-05-20 18:58:29 +02:00
Niels Lohmann
21b1680ea1
🚚 rename binary_array() to binary()
2020-05-19 13:30:22 +02:00
Niels Lohmann
952a87a4f4
🚚 move byte container outside detail namespace
2020-05-19 13:08:18 +02:00
Niels Lohmann
b7ff40029a
💥 change serialization of binary values
2020-05-18 13:53:20 +02:00
gistrec
3f0cf26f7a
changes to the single header were applied
2020-05-18 10:17:45 +00:00
Niels Lohmann
904642f261
♻️ rename internal_binary_t with binary_t
2020-05-17 22:50:27 +02:00
Niels Lohmann
dead99eb0e
🔨 overwork binary subtypes
2020-05-17 13:51:59 +02:00
Niels Lohmann
ab6e76dd05
Merge branches 'binary_type' and 'develop' of https://github.com/nlohmann/json into binary_type
2020-05-17 12:27:58 +02:00
Niels Lohmann
3799b3f8dd
Merge pull request #2116 from nlohmann/issue2113
...
Fix warnings from Clang 10 and GCC 9
2020-05-17 12:19:06 +02:00
Niels Lohmann
6154d50a9f
Merge pull request #2115 from nlohmann/issue2089
...
Do not include <ciso646> when using C++17
2020-05-17 12:17:17 +02:00
Niels Lohmann
28e20bd9e4
🚨 fix warnings #2113
2020-05-16 14:26:17 +02:00
Niels Lohmann
c0cf67ead3
Merge branch 'develop' of https://github.com/nlohmann/json into binary_type
2020-05-16 12:58:13 +02:00
Niels Lohmann
f40a9f876a
Merge pull request #2044 from dota17/issue#1719
...
Fix issue#1719
2020-05-16 12:57:00 +02:00
Niels Lohmann
3ed059f6ff
⏪ revert faulty changes
2020-05-16 12:56:18 +02:00
Niels Lohmann
bc1886fb60
♻️ refine interface of wrapped_binary_t
2020-05-15 23:21:49 +02:00
Niels Lohmann
a452e8a0a1
💚 fix GCC 4.9 compilation
2020-05-15 22:38:18 +02:00
chenguoping
5dd27f1a9f
compare against max float and min float before converting
2020-05-15 21:47:59 +08:00
Niels Lohmann
daf2d296dd
♻️ move wrapped binary type to separate file
2020-05-15 14:12:32 +02:00
chenguoping
779a0ec7df
update
2020-05-15 17:35:43 +08:00
Niels Lohmann
bcf4f3ce9a
📝 add warning for items() on temporary objects #2040
2020-05-14 19:06:48 +02:00
chenguoping
e175150f5b
fix UBSAN
2020-05-14 20:54:47 +08:00
chenguoping
44fe284f9d
Enhace to_cbor() to support +/-Infinity, NaN, and single-precision float
2020-05-14 15:10:44 +08:00
Niels Lohmann
0857140839
Merge pull request #1950 from FrancoisChabot/issues/1457
...
templated input adapters
2020-05-14 07:52:02 +02:00
chenguoping
cdf5327ace
Fix issue#2086
2020-05-14 12:44:30 +08:00
Niels Lohmann
d7b032f565
✅ add tests to improve coverage
2020-05-13 21:28:43 +02:00
Niels Lohmann
a4266bbb7d
Merge branch 'develop' into issues/1457
2020-05-13 12:48:46 +02:00
Niels Lohmann
5c42847011
✅ add tests for binary type
2020-05-10 13:23:18 +02:00
Niels Lohmann
fff46ea98c
✅ add tests for binary type
2020-05-09 23:18:12 +02:00
Niels Lohmann
b036ace235
🐛 fix bug in binary constructor
2020-05-09 14:16:49 +02:00
Niels Lohmann
f0c6ab4d3b
🐛 fix bug in SAX callback parser
2020-05-08 14:21:11 +02:00
Niels Lohmann
8c2b26de4a
⚗️ do not include <ciso646> with C++20 #2089
2020-05-07 10:17:32 +02:00
Niels Lohmann
9adb1c0235
🏁 do not include <ciso646> unless old MSVC is used #2089
2020-05-07 09:43:41 +02:00
Niels Lohmann
c10bc7efdd
🔥 remove pretty-print code for binary values
2020-05-06 22:13:08 +02:00
Niels Lohmann
421a084396
✨ add convenience function to create binary value with given subtype
2020-05-06 21:23:45 +02:00
Niels Lohmann
6dee8866a8
🐛 fix binary comparison
2020-05-05 12:40:04 +02:00
Niels Lohmann
48aa441661
✨ add swap function for binary type
2020-05-04 22:07:36 +02:00
Niels Lohmann
f0050c9ba0
Merge pull request #2019 from dota17/contains_v2
...
fix #1982:json_pointer.contains() exception is incorrectly raised
2020-05-02 11:04:57 +02:00
Rimas Misevičius
6815968a42
Fix error message about invalid surrogate pairs
...
I tested following strings with invalid surrogate pair and unpaired surrogate in files:
1. `"a\uD800\uD800x"`
2. `"a\uD800x"`
The error messge was: "... invalid string: surrogate U+DC00..U+DFFF must be followed by U+DC00..U+DFFF; ..."
I think it must be: "... invalid string: surrogate U+D800..U+DBFF must be followed by U+DC00..U+DFFF; ..."
2020-05-01 00:23:04 +03:00
Niels Lohmann
db013c9428
Merge pull request #2071 from nlohmann/issue2067
...
Properly pass serialize_binary to dump function
2020-04-29 19:39:58 +02:00
Niels Lohmann
2e5727d778
🐛 properly pass serialize_binary to dump function #2067
2020-04-27 15:10:23 +02:00
Niels Lohmann
9e0180b698
🐛 fix returning reference to local temporary object #2064
2020-04-27 14:43:49 +02:00
Niels Lohmann
a29e3b1318
Merge pull request #2054 from nlohmann/feature/issue1983
...
Fix bug in diff function
2020-04-20 19:44:35 +02:00
chenguoping
8bfc692602
update condition
2020-04-20 16:00:55 +08:00
Niels Lohmann
3607687a14
Merge pull request #2053 from nlohmann/gcc10warnings
...
Fix GCC compiler warnings
2020-04-20 08:05:42 +02:00
Niels Lohmann
e8356928bd
🚨 fix compiler warnings #2052
2020-04-19 13:25:02 +02:00
Niels Lohmann
4fb0795ec1
🚨 fix compiler warnings #2049
2020-04-19 13:01:36 +02:00
Niels Lohmann
3bc9e053c9
Merge pull request #1969 from dota17/dota17-warning
...
fix warnings in serializer.hpp for VS2019
2020-04-17 10:10:38 +02:00
Niels Lohmann
69ac336042
Merge pull request #1967 from dota17/dota17-disable
...
Fix C26451 warnnings in to_chars.hpp
2020-04-17 10:08:21 +02:00
Niels Lohmann
f2b43a36b2
Merge pull request #1662 from OmnipotentEntity/develop
...
Add binary type support to all binary file formats, as well as an internally represented binary type
2020-04-16 11:14:32 +02:00
Michael Reilly
012c9665ac
Add binary type support to all binary file formats, as well as an internally represented binary type
2020-04-14 10:22:45 -04:00
Niels Lohmann
dd04a32918
🐛 fix bug in diff function #1983
2020-04-13 14:35:36 +02:00
chenguoping
f5a487d1b4
fix issue1982: contains() exceptions are incorrectly raised
2020-04-13 19:41:13 +08:00
Niels Lohmann
b7be613b6e
Merge pull request #1990 from dota17/json_pointer
...
catch exceptions for json_pointer : ..../+99
2020-04-13 13:29:33 +02:00
Niels Lohmann
84f19d6333
Merge pull request #2034 from ArtemSarmini/gh-1920-gcc-10-incomplete-types
...
Templatize basic_json constructor from json_ref
2020-04-13 13:19:28 +02:00
Niels Lohmann
b0a3883081
🎨 fix format
2020-04-13 13:11:26 +02:00