Lukas Barth
0b1b6307a5
Also change the re2c file
2017-03-30 16:14:02 +02:00
Lukas Barth
40aff4182f
Pop for every push
2017-03-30 16:10:03 +02:00
Niels Lohmann
c2e80a72d7
🔨 deprecated j << istream / j >> ostream functions #367
...
The implementation is non-standard. Deprecation allows a simpler API in
the future without removing any features.
2017-03-29 00:39:47 +02:00
Niels Lohmann
b4dbebffcd
✅ added regression test for #464
2017-03-28 23:28:54 +02:00
Niels Lohmann
62dfdf3f5d
📝 addressed #514
...
NaN values never compare equal to themselves or to other NaN values.
2017-03-28 23:24:59 +02:00
Niels Lohmann
19cd206d99
📝 documented Xcode 8.3
2017-03-28 21:39:16 +02:00
Niels Lohmann
a0aa6ad2b2
👷 added Xcode 8.3
...
https://blog.travis-ci.com/2017-03-28-xcode-83-ga-is-here
2017-03-28 20:42:12 +02:00
Niels Lohmann
d4d51460ab
Merge branch 'feature/noexcept_exceptions' into develop
2017-03-26 12:54:22 +02:00
Niels Lohmann
3336194306
🔨 reverted changes that led to Travis failures
2017-03-26 12:23:10 +02:00
Niels Lohmann
53b501a785
🔨 cleanup
2017-03-25 23:31:03 +01:00
Niels Lohmann
cf7786887c
🔨 fixed check for is_nothrow_copy_constructible
...
We now only demand our exceptions to be is_nothrow_copy_constructible
if std::runtime_exception is.
2017-03-25 17:35:57 +01:00
Niels Lohmann
c333679a96
🔨 small refactoring
...
The solution with a std::runtime_error member is more elegant. It
allows to have std::exception as base class again. However, I still
have no idea why GCC thinks the copy constructor may throw...
2017-03-25 17:25:39 +01:00
Niels Lohmann
cc36c65a89
🚑 made exceptions nothrow-copy-constructible #531
...
To have nothrow-copy-constructible exceptions, we inherit from
std::runtime_error which can cope with arbitrary-length error messages.
Intermediate strings are built with static functions and then passed to
the actual constructor.
2017-03-25 16:22:52 +01:00
Niels Lohmann
a58ed3cd17
💄 cleanup
2017-03-25 14:47:23 +01:00
Niels Lohmann
20bcf1015b
📝 cleanup after #536
2017-03-25 14:19:05 +01:00
Niels Lohmann
0f9585685a
Merge pull request #536 from vpetrigo/feature/VS17_appveyor_support
...
Add Visual Studio 17 image to appveyor build matrix
2017-03-25 14:12:30 +01:00
Vladimir Petrigo
8edb0cd15c
Add VS17 image to appveyor matrix
2017-03-25 14:57:58 +03:00
Niels Lohmann
3d597dda5d
📝 update after #534
2017-03-24 19:51:11 +01:00
Niels Lohmann
bba688f53e
Merge pull request #534 from TedLyngmo/utf8_encoding_enhancement
...
UTF8 encoding enhancement
2017-03-24 19:38:29 +01:00
Ted Lyngmo
cea2426731
UTF8 encoding enhancement
2017-03-24 14:56:48 +01:00
Niels Lohmann
8a872927e8
Merge pull request #530 from berkus/patch-1
...
Fix typo
2017-03-23 13:57:54 +01:00
Berkus Decker
b14629b0a6
Fix typo
2017-03-23 14:50:41 +02:00
Niels Lohmann
54db53c230
📝 update after #527 and #525
2017-03-22 08:10:31 +01:00
Niels Lohmann
d60851168e
🚨 fixed a compiler warning #527
...
The result of snprintf is later used in situations where a long may
overflow.
2017-03-22 08:10:02 +01:00
Niels Lohmann
67a06834b0
Merge pull request #526 from krzysztofwos/feature/exception-base-class
...
Make exception base class visible in basic_json
2017-03-22 07:50:34 +01:00
Krzysztof Woś
b9c3b8d688
Exit with an error if re2c is not available
...
Instead of overwriting src/json.hpp with an empty file
2017-03-20 16:00:58 +09:00
Krzysztof Woś
86579209c8
Make exception base class visible in basic_json
2017-03-20 16:00:58 +09:00
Niels Lohmann
31a6c0910e
🚑 fix for #519
...
Added catch branch for out_of_range exception that can occur if input
file contains a number overflow.
2017-03-17 22:18:48 +01:00
Niels Lohmann
f547679de5
🚑 fix for #516 and #518
...
We should compare the binary serializations rather than the JSON values
themselves. This fix was already done for CBOR and apparently forgotten
for MessagePack.
2017-03-17 22:18:05 +01:00
Niels Lohmann
2d474b5273
Merge pull request #510 from alex-weej/patch-1
...
🎨 Namespace `uint8_t` from the C++ stdlib
2017-03-17 06:47:11 +01:00
Alexander “weej” Jones
836f1c4189
🎨 Namespace uint8_t
from the C++ stdlib
2017-03-16 18:24:41 +00:00
Niels Lohmann
cd43600e6f
💄 cleanup after #508
2017-03-16 19:02:05 +01:00
Niels Lohmann
773b33e016
Merge pull request #508 from theodelrieu/feature/c_array_conversion
...
add to_json method for C arrays
2017-03-16 19:00:58 +01:00
Niels Lohmann
c5711f3072
🚧 a lot of minor changes
...
- Removed unused headers.
- Added override where needed.
- Added description for parse_error.113 exception.
- Fixed some conversion warnings.
- Integrated cbor_expect_string function for CBOR maps.
- Added documentation on the supported CBOR/MessagePack features.
- Added test to check all initial bytes for CBOR input.
2017-03-16 18:39:33 +01:00
Niels Lohmann
483a58f625
🚨 added pedantic flags for GCC
...
With GCC 7, there are even more diagnostic flags.
2017-03-16 18:35:45 +01:00
Théo DELRIEU
dbebf8de47
add to_json method for C arrays
...
If the array can be converted to basic_json::string_t, the overload
in this commit is not chosen.
2017-03-16 15:20:39 +01:00
Niels Lohmann
100bf3ef2c
Merge branch 'feature/getline' into develop
2017-03-14 23:08:19 +01:00
Niels Lohmann
710f8a2686
📝 improved documentation for to-CBOR and to-msgpack functions
2017-03-14 23:08:05 +01:00
Niels Lohmann
1de80e8af4
🔨 added user-defined exception #493
...
Replaced old std::invalid_argument exception by parse_error.111 to have
unified exceptions in case of input stream errors.
2017-03-14 21:31:36 +01:00
Niels Lohmann
63c2c62f19
🔨 changed call from "not good()" to "fail()" #493
...
Also merged develop into this feature branch.
2017-03-14 21:24:53 +01:00
Niels Lohmann
95474e420d
🏁 added parentheses around max/min calls #506
...
When <Windows.h> is included with MSVC, a macro NOMINMAX is defined
that yields compilation errors when max/min calls are encountered. This
can be fixed by un-defining NOMINMAX, or by placing parentheses around
all min/max calls. We chose the latter.
2017-03-14 21:11:20 +01:00
Niels Lohmann
b026591e9e
🚑 added special case to fuzzers to fix #504
...
Since #329 , NaN and inf numbers do not yield an exception, but are
stored internally and are dumped as “null”. This commit adjusts the
fuzz testers to deal with this special case.
2017-03-14 21:05:38 +01:00
Niels Lohmann
bfe4788e32
🚑 fix for #500
...
Removed a check that already failed in MSVC.
2017-03-14 16:14:05 +01:00
Niels Lohmann
84072fbd6d
💄 fixed indentation
2017-03-14 16:07:28 +01:00
Niels Lohmann
b8b4362ca4
🔥 removed accidentally committed binaries
2017-03-13 19:04:19 +01:00
Niels Lohmann
c5cf32e34d
🔨 added user-defined exception 406
2017-03-12 20:59:33 +01:00
Niels Lohmann
43b8285249
🔀 merge branch 'feature/exceptions_3.0.0' into develop
2017-03-12 20:34:30 +01:00
Niels Lohmann
855cdcf05c
🔀 merge branch 'develop' into feature/exceptions_3.0.0
2017-03-12 20:22:30 +01:00
Niels Lohmann
8feaf8dc94
💥 implemented new handling of NaN and INF #70 #329 #388
...
- If an overflow occurs during parsing a number from a JSON text, an
exception (std::out_of_range for the moment, to be replaced by a
user-defined exception #244 ) is thrown so that the overflow is detected
early and roundtripping is guaranteed.
- NaN and INF floating-point values can be stored in a JSON value and
are not replaced by null. That is, the basic_json class behaves like
double in this regard (no exception occurs). However, NaN and INF are
serialized to “null”.
- Adjusted test cases appropriately.
2017-03-12 18:38:05 +01:00
Niels Lohmann
9355f05888
🔨 cleaned up array from_json methods #473
...
Removed some code that is not needed any more. Thus, streamlining the
array from_json methods.
2017-03-12 17:05:02 +01:00