Commit graph

3209 commits

Author SHA1 Message Date
Niels Lohmann
c42273d2a0
📝 fixed documentation #565
The documentation mismatched the actual code.
2017-04-23 21:46:30 +02:00
Niels Lohmann
2df8f12c09
🏁 another fix for MSVC #464
needed for VS2015.3 with /std:c++latest
2017-04-23 20:51:29 +02:00
Niels Lohmann
734297ff45
🔨 cleanup 2017-04-23 20:32:05 +02:00
Niels Lohmann
01e05d89e9
🔨 fixed a compiler warning
Default arguments are forbidden in lambdas.
2017-04-23 18:40:17 +02:00
Niels Lohmann
b686cc6ad9
🔨 removed #ifdefs 2017-04-23 18:34:14 +02:00
Niels Lohmann
5febd04a26
🐛 fixed test suite 2017-04-23 18:22:35 +02:00
Niels Lohmann
4aedae400e
added exhaustive UTF-8 tests
Creates all well-formed sequences of bytes up to length 4. Furthermore,
creates ill-formed sequences by removing required trailing bytes or
changing bytes. As the tests can take a lot of time, preprocessor
symbols are introduced.
2017-04-23 15:12:50 +02:00
Niels Lohmann
e24df7eca9
📝 improved documentation 2017-04-23 15:10:40 +02:00
Niels Lohmann
2a21146160
Merge branch 'develop' into feature/manual_lexer 2017-04-22 11:35:58 +02:00
Niels Lohmann
4b316ec528
Merge branch 'feature/insert' into develop 2017-04-22 09:58:37 +02:00
Niels Lohmann
9b32f72584
📝 fixed examples for Wandbox
As I learned in https://github.com/melpon/wandbox/issues/209, this
library is already installed at Wandbox, so we need to adjust the
examples to use `#include "json.hpp"` insteas of `#include <json.hpp>`.
2017-04-21 22:07:07 +02:00
Niels Lohmann
db9bf953f3
🔨 improved diagnostic output 2017-04-15 10:40:10 +02:00
Niels Lohmann
717106eced
🔨 templated output_adapter and used in class serializer 2017-04-14 19:49:05 +02:00
Niels Lohmann
aea47422a2
📝 updated links and output 2017-04-14 18:13:01 +02:00
Niels Lohmann
6b6e554067
🐛 added missing header
std::setw needs the iomanip header (at least with GCC).
2017-04-14 17:37:28 +02:00
Niels Lohmann
951d0920fc
🐛 fixed README example
The example with the size() operator is bad: using operator[] already
changes the size of the object. The fix makes it clearer.
2017-04-14 17:36:45 +02:00
Niels Lohmann
e2f6cf7f46
🔥 removed .test files
These files were never meant to be versioned.
2017-04-14 17:35:31 +02:00
Niels Lohmann
2d2b98a50a
Merge branch 'develop' into feature/manual_lexer 2017-04-12 18:07:25 +02:00
Niels Lohmann
d4469233ac
Merge branch 'develop' into feature/insert 2017-04-12 18:01:06 +02:00
Niels Lohmann
42b4cdd4d0
👷 Travis is very picky 2017-04-11 22:13:26 +02:00
Niels Lohmann
ef55626296
👷 added Clang 3.9-5.0
Taken from
https://github.com/travis-ci/docs-travis-ci-com/pull/746/files.
2017-04-11 20:37:38 +02:00
Niels Lohmann
5bea6f383a
✏️ fixed a typo 2017-04-11 18:57:53 +02:00
Niels Lohmann
4c161161f0
Merge branch 'feature/vs2017' into develop 2017-04-10 19:51:58 +02:00
Niels Lohmann
d7e57e3b73
🔨 added an output adapter for the binary writer 2017-04-09 22:13:26 +02:00
Niels Lohmann
f3e43d7c6f
🔨 some cleanup 2017-04-09 21:14:51 +02:00
Niels Lohmann
186a9fd44d
🔨 simplified interface for parser, lexer, and binary_reader
These classes are now constructed with an interface adapter. This moves
complexity from various places into the interface adapter class, or to
some factories which now implement the different flavors of input.

Furthermore, input adapters are kept in std::shared_ptr to avoid the
need of manual deletion.
2017-04-09 19:28:15 +02:00
Niels Lohmann
e48114bbd6
🔨 check for value of _HAS_CXX17 2017-04-09 14:02:04 +02:00
Niels Lohmann
628be157a2
🐛 added fix for #464 2017-04-09 13:52:04 +02:00
Niels Lohmann
c40c8ac92e
👷 excluding MSVC 2015 with "/permissive- /std:c++latest /utf-8" 2017-04-09 12:00:30 +02:00
Niels Lohmann
a9f4094580
👷 another try 2017-04-09 11:47:31 +02:00
Niels Lohmann
180d249f6c
👷 another try 2017-04-09 11:38:42 +02:00
Niels Lohmann
d3d87674c8
👷 fixed AppVeyor syntax 2017-04-09 11:00:39 +02:00
Niels Lohmann
9d9c5216d7
👷 additional flags for MSVC #464
To test a fix for issue #464 (not yet implemented), we first need to
have  an MSVC build with “/permissive- /std:c++latest /utf-8”.
2017-04-09 10:59:45 +02:00
Niels Lohmann
6f99d5b2e9
🔨 fixed test case
One test case for CBOR and MessagePack assumed little endianess.
2017-04-08 23:39:17 +02:00
Niels Lohmann
d4e49873b7
👷 experimenting with configurations 2017-04-08 21:56:42 +02:00
Niels Lohmann
97a25de938
proposal for #428
This implementation forwards the iterators to std::map::insert.
2017-04-07 18:29:09 +02:00
Niels Lohmann
d62d48fc48
🔀 merge branch 'develop' into feature/manual_lexer 2017-04-07 17:19:52 +02:00
Niels Lohmann
90273e930c
🐛 fix for #512
We totally forgot to implement the comparison operators other than ==
and != for scalar types. Consequently, comparing a JSON value with a
scalar type led to compile errors.
2017-04-07 15:44:41 +02:00
Niels Lohmann
ff72f38863
🔨 fixed another warning
Do not store eof() in a char buffer…
2017-04-06 19:54:08 +02:00
Niels Lohmann
b992acc2e7
🔨 fixed a compiler warning 2017-04-05 20:39:27 +02:00
Niels Lohmann
08fdfcca9a
🔨 implemented a binary writer 2017-04-04 23:17:43 +02:00
Niels Lohmann
c28bf823bc
🔨 added endianess check 2017-04-04 17:30:43 +02:00
Niels Lohmann
b15fc13dd1
🔨 implemented MessagePack in binary_reader 2017-04-04 16:59:19 +02:00
Niels Lohmann
3a34f2d82c
Merge branch 'develop' into feature/manual_lexer 2017-04-04 15:55:40 +02:00
Niels Lohmann
782570d46f
🔨 cleanup 2017-04-03 22:58:46 +02:00
Niels Lohmann
4f6b63e492 Merge pull request #545 from theodelrieu/feature/enum_class_support
add enum class default conversions
2017-04-03 22:13:59 +02:00
Niels Lohmann
ea667db446
🔨 fixed compilation errors
TIL about C++:

executing m[key()]=val(); for a std::map executes

First key() then val() with Clang

First val() then key() with GCC

#wat
2017-04-03 21:53:23 +02:00
Niels Lohmann
89efe627fe
🔨 a lot of restructuring
- removed uncached input stream adapter; it was too slow anyway
- implemented a class binary_read which parses CBOR based on input
adapters
- in the CBOR parser, numbers are created via memcpy to avoid undefined
behavior
2017-04-02 18:46:21 +02:00
Théo DELRIEU
af9b21151c add enum class default conversions 2017-04-02 13:10:15 +02:00
Niels Lohmann
3a5cf9bd0a
🔨 improved code coverage 2017-04-01 08:34:58 +02:00