Commit graph

764 commits

Author SHA1 Message Date
Niels Lohmann c6a482b16c
📝 added example for sax_parse 2018-08-18 15:42:18 +02:00
Niels Lohmann 3811daa8a3
📝 release preparation 2018-08-18 12:00:14 +02:00
Tsz-Ho Yu 3004a73951 Fix -Wno-sometimes-uninitialized by initializing "result" in parse_sax
The function parse_sax() returns sometimes-uninitialized warnings in
some compilers. This commit fixes that.
2018-08-18 01:12:19 +01:00
Niels Lohmann e33b31e6aa
🐛 fixed callback-related issue (https://github.com/nlohmann/json/issues/971#issuecomment-413678360) 2018-08-17 23:09:45 +02:00
Niels Lohmann b5c54b41fd
📝 overworked documentation 2018-08-16 21:53:47 +02:00
Niels Lohmann 07494e06d7
🚨 fixed some compiler warnings 2018-08-16 18:20:30 +02:00
Théo DELRIEU 0cc3db4f15
add static_asserts on SAX interface 2018-08-16 11:59:57 +02:00
Théo DELRIEU 38f8a51a8f
use abstract sax class in parser tests 2018-08-16 11:59:49 +02:00
Théo DELRIEU 9bbb133094
remove no_limit constant and default values 2018-08-16 11:59:05 +02:00
Théo DELRIEU 442886d040
use templates in the sax interface instead of virtuals 2018-08-16 11:58:52 +02:00
Théo DELRIEU f6febbe359
split meta.hpp, add detected_t (used to define concepts) 2018-08-16 11:58:42 +02:00
Niels Lohmann 3ac2d81a95
🔨 fixed a MinGW error #1193 2018-08-14 22:13:56 +02:00
Niels Lohmann be2065dce9
🚨 fixing a MinGW warning #1192 2018-08-14 22:11:47 +02:00
Niels Lohmann 0e748f2f8c
Merge pull request #1187 from devsisters/json-internal-catch
[RFC] Introduce a new macro function: JSON_INTERNAL_CATCH
2018-08-14 21:56:29 +02:00
Niels Lohmann 347e77bdc1
🚑 fix for #1169 2018-07-21 10:31:55 +02:00
Niels Lohmann 04372a8c56
🏁 fix for #1168 2018-07-19 17:31:50 +02:00
Hyeon Kim d0e60de433 Add new JSON_INTERNAL_CATCH macro function 2018-07-19 15:43:41 +09:00
Niels Lohmann 39dd775e38
🔨 cleanup after #1134 2018-06-28 21:32:32 +02:00
Niels Lohmann 86a96b059d
Merge pull request #1134 from Daniel599/feature/items_iterator
fixed compile error for #1045
2018-06-28 21:21:17 +02:00
Niels Lohmann 396a914f9e
🔨 added macro to disable compiler check #1128 2018-06-26 22:47:40 +02:00
Julius Rakow 963d06a13c 📝 fix links to cppreference named requirements
"Concepts" have been renamed to "named requirements".
This is because P0898R3 Standard Library Concepts has been merged into
C++20.
Cppreference have moved their links accordingly.
2018-06-24 22:36:19 +02:00
Julius Rakow 9f00db48d9 📝 link to cppreference via HTTPS 2018-06-24 22:34:47 +02:00
Niels Lohmann 7fa4ddf93e
💄 fixed indentation 2018-06-23 17:27:40 +02:00
Niels Lohmann bf348ca8a4
Merge pull request #1028 from gracicot/develop
Added support for string_view in C++17
2018-06-23 17:10:04 +02:00
Niels Lohmann ed6a0686df
🔨 small refactoring to improve branch coverage
The branch coverage reported by lcov is weird. The code before and after has the same Godbolt assembler, but the code with the lambda has a better branch coverage.
2018-06-23 17:05:04 +02:00
Niels Lohmann c02de445bf
🚨 fixed more compiler warnings 2018-06-23 11:00:42 +02:00
Niels Lohmann 66dd1a846d
🚨 fixed more compiler warnings 2018-06-23 10:47:55 +02:00
Niels Lohmann 850922269d
🚨 removed compiler warnings 2018-06-23 10:28:04 +02:00
Niels Lohmann 85f35a1d59
📝 documentation fix 2018-06-22 22:34:42 +02:00
Théo DELRIEU 2c920a1032
run make amalgamate 2018-06-18 15:14:10 +02:00
Danielc 1566ad4053 fixed compile error for #1045; to_json for iternation_proxy_internal was needed 2018-06-16 12:01:49 +03:00
Guillaume Racicot 14e6278c2f Merge branch 'develop' of github.com:gracicot/json into develop 2018-06-04 11:18:25 -04:00
Guillaume Racicot 7acd90b651 Fixed check for compatible string type 2018-06-04 11:18:19 -04:00
Guillaume Racicot e0e7fa39e7 Re-added external_constructor with string compatible types 2018-06-03 23:49:13 -04:00
Guillaume Racicot 4778c02ab5 Set MSVC version from 1514 and older 2018-06-01 14:42:25 -04:00
Guillaume Racicot 714c592680 Disabled implicit conversion to string_view on MSVC 15.13 and older 2018-06-01 14:22:57 -04:00
Niels Lohmann 0efaf891e5
Merge pull request #1089 from theodelrieu/feature/map_conversion
Provide a from_json overload for std::map
2018-05-28 14:53:23 +02:00
Théo DELRIEU c5e63fd684
Provide a from_json overload for std::map
This overload is chosen only when BasicJsonType::string_t
is not constructible from std::map::key_type.

Currently, converting a map to json treats it as an array of pairs.

fixes #1079
2018-05-28 11:06:24 +02:00
Niels Lohmann db03d09312
Merge branch 'feature/key_ref' into develop (fixes #1098) 2018-05-27 22:26:00 +02:00
Niels Lohmann 3cdc4d784b
📝 added documentation 2018-05-27 18:07:53 +02:00
Niels Lohmann adf09726b0
Merge branch 'develop' into feature/sax2 2018-05-27 14:26:13 +02:00
Niels Lohmann 481ace65c4
🔨 only calculate array index string when needed #1098 2018-05-27 12:04:22 +02:00
Niels Lohmann 1c6b332dcd
👌 mitigating cppcheck bug #1101 2018-05-26 14:10:13 +02:00
Niels Lohmann 90eb0a91e0
keys are now returned as const reference #1098 2018-05-26 13:26:40 +02:00
Niels Lohmann e94862a649
🚑 fixed error in callback logic 2018-05-06 19:00:49 +02:00
Niels Lohmann 5ff2abb90d
Merge branch 'develop' into feature/sax2 2018-05-06 13:29:23 +02:00
Niels Lohmann ed69e50ad2
📄 added SPDX-License-Identifier 2018-05-03 17:41:45 +02:00
Niels Lohmann fa3e42f826
Merge branch 'develop' into feature/wstring 2018-04-29 13:16:12 +02:00
Jan Schöppach 65b4d8251b
Fix typo in single_include, too 2018-04-17 13:02:36 +02:00
Niels Lohmann 8d8f890771
💩 first try on #1045 2018-04-10 08:29:07 +02:00
Niels Lohmann cf91b4f2bb
Merge branch 'develop' into feature/wstring 2018-04-08 11:36:58 +02:00
Niels Lohmann e1ea8369ad
Merge branch 'develop' into feature/sax2 2018-04-08 09:31:59 +02:00
Niels Lohmann 08a7233d1b
🚑 fixed commit 1e08654 2018-04-02 22:38:44 +02:00
Niels Lohmann 1e08654f99
🔨 cleanup 2018-04-02 22:25:17 +02:00
Niels Lohmann aa89c5e048
🔨 removing unget_character() function from input adapters #834 2018-04-02 21:10:48 +02:00
Niels Lohmann 16c5bfeaad
👌 fixed compiler warnings #1031 2018-04-02 13:01:56 +02:00
Niels Lohmann eb06d0531a
🚧 added input adapter for wide strings #1031 2018-04-01 19:12:36 +02:00
Niels Lohmann ba6edd5634
🔨 cleanup 2018-03-30 00:38:18 +02:00
Niels Lohmann 850671b9f1
🔨 using a vector<bool> for the parser hierarchy 2018-03-29 18:45:43 +02:00
Guillaume Racicot 53d8d57921 Amalgamate single include 2018-03-29 01:03:36 -04:00
Niels Lohmann 5f723bbec6
🔨 realized callback parser wirh SAX interface #971 2018-03-28 23:39:39 +02:00
Niels Lohmann 896a9db461
🔨 improved code #1021 2018-03-28 19:37:21 +02:00
Niels Lohmann a9baab76c2
🚑 fix for #1021 2018-03-28 18:20:55 +02:00
Niels Lohmann 4f6b2b6429
🔨 changed SAX interface 2018-03-21 20:12:06 +01:00
Niels Lohmann 9e1abb4842
improved coverage 2018-03-20 22:39:08 +01:00
Niels Lohmann 25f56ff207
📝 updated documentation 2018-03-20 19:22:18 +01:00
Niels Lohmann 99ecca55c4
improved test coverage 2018-03-20 18:49:10 +01:00
Niels Lohmann 9e07e9b4ec
implemented non-throwing binary reader 2018-03-19 22:48:13 +01:00
Niels Lohmann a271ee5f16
♻️ proper use of SAX parser for binary formats 2018-03-18 23:00:45 +01:00
Niels Lohmann 943d641054
🔨 some refactoring 2018-03-18 16:07:21 +01:00
Niels Lohmann 22929fe189
🚧 started a SAX/DOM/callback parser 2018-03-18 15:13:53 +01:00
Niels Lohmann 375b05a17d
🔨 cleanup 2018-03-17 23:31:18 +01:00
Niels Lohmann 606a25195f
improved test coverage 2018-03-17 19:15:59 +01:00
Niels Lohmann c87ffad45c
♻️ implemented a non-recursive parser 2018-03-17 14:46:50 +01:00
Guillaume Racicot 2a5506ed98 Amalgamated headers 2018-03-16 13:16:10 -04:00
Niels Lohmann 27cf05af8d
Merge branch 'develop' into feature/sax2 2018-03-14 22:02:19 +01:00
Niels Lohmann afef474c0d
🔖 set version to 3.1.2 2018-03-14 21:09:27 +01:00
Niels Lohmann 282bafae4f
🔨 fixed compilation error 2018-03-14 07:18:42 +01:00
Niels Lohmann abac6a0e84
Merge branch 'develop' into feature/sax2 2018-03-13 23:58:17 +01:00
Niels Lohmann 8557151d90
♻️ adjusting lexer/parser in symmetry to #1006 2018-03-12 19:15:11 +01:00
Niels Lohmann 3d4f6a2940
🔨 cleaner exception interface 2018-03-11 22:47:25 +01:00
Niels Lohmann ad47b0fbde
♻️ refactored binary readers to use a SAX parser 2018-03-11 18:47:38 +01:00
Vitaliy Manushkin 830f3e5290 forward alternative string class from output_adapter to output_string_adapter 2018-03-10 23:58:16 +03:00
Vitaliy Manushkin ed6b1464f9 dump to alternate implementation of string, as defined in basic_json template (changes to amalgamated code) 2018-03-10 17:36:51 +03:00
Niels Lohmann 149d2fd09c
💚 improved test coverage 2018-03-10 11:24:00 +01:00
Niels Lohmann 6399cd3039
Merge branch 'develop' into feature/sax2 2018-03-10 11:07:36 +01:00
Niels Lohmann 6151dfaed7
👌 made changes proposed in #1001 2018-03-10 11:02:58 +01:00
Niels Lohmann 35e43df625
Merge branch 'develop' into feature/sax2 2018-03-09 21:56:30 +01:00
Niels Lohmann aa8fc2a41c
🚑 hopefully fixed the memory leak 2018-03-08 17:11:15 +01:00
Niels Lohmann 97559bb1b2
🔨 trying to fix the leak
Part 1: properly use forwarding
2018-03-08 07:36:56 +01:00
Niels Lohmann 8b379948d0
🔥 replaced acceptor with SAX parser 2018-03-07 22:40:48 +01:00
Niels Lohmann 303a0c5843
Merge branch 'develop' into feature/sax2 2018-03-07 22:26:01 +01:00
Niels Lohmann d2d65bb25b
♻️ refined SFINAE to fix some warnings 2018-03-07 22:01:44 +01:00
Niels Lohmann 476b2e09be
💚 added regression tests for #972 and #977 2018-03-06 20:13:31 +01:00
Niels Lohmann 62030615a0
Merge pull request #986 from theodelrieu/fix/basic_json_conversion
Fix/basic json conversion
2018-03-06 19:27:39 +01:00
Niels Lohmann 5beab80553
🔨 using the SAX-DOM parser 2018-03-06 18:17:07 +01:00
Niels Lohmann faf2546a15
🔨 simplified SAX-DOM parser 2018-03-06 07:19:05 +01:00
Niels Lohmann 5b9d03cfdb
🔨 added SAX-DOM-Parser 2018-03-05 21:06:00 +01:00
Niels Lohmann 9d27429527
🔨 added error messages to SAX interface 2018-03-05 16:46:35 +01:00
Niels Lohmann 86991d5204
Merge branch 'develop' into feature/sax2 2018-03-05 16:16:43 +01:00
Mike Bogdanov fd30ad8a14 did make amalgamate 2018-03-02 11:47:35 +03:00
Théo DELRIEU 8711ec6034
support construction from other basic_json types
Before this patch, `basic_json` types with different template arguments
were treated as `CompatibleArrayType`. Which sometimes leads to recursive
calls and stack overflows.

This patch adds a constructor and a `get` overload to deal with
different `basic_json` types.
2018-02-27 16:48:09 +01:00
Niels Lohmann 3ff9455332
🔨 added a SAX-DOM-Parser 2018-02-26 23:39:23 +01:00
Niels Lohmann 21352c4d8e
♻️ refactored SAX parser 2018-02-26 20:08:12 +01:00
Niels Lohmann 8d6b3d44d6
👌 fixed some compiler warnings 2018-02-25 18:35:16 +01:00
Niels Lohmann 8c7f46f7d0
🔨 removed a logic error and improved coverage 2018-02-25 17:10:30 +01:00
Niels Lohmann 374ebacc51
added a SAX parser #971 2018-02-24 18:04:07 +01:00
Niels Lohmann 938c861a09
🔖 set version to 3.1.1 2018-02-12 22:59:36 +01:00
Théo DELRIEU 01d6118828
Fix constraints on from_json(CompatibleArrayType)
Fixes #924
2018-02-12 15:37:33 +01:00
Niels Lohmann 865ff00de0
📝 updated documentation wrt. objects #963 2018-02-09 23:37:20 +01:00
Niels Lohmann 33a9b00ce6
🐛 fix for #962
Added out_of_range exception for UBJSON containers with sizes that exceed the target container's max_size.
2018-02-06 22:38:53 +01:00
Niels Lohmann 8b457ace25
🐛 fixing CBOR's indefinity length strings #961
Beside the fix discussed in #961, we also had to re-adjust a test case. It seems that it was failing before, and I "fixed" it to work with the broken implementation...
2018-02-06 20:43:03 +01:00
Niels Lohmann 0258484626
🔖 set version to 3.1.0
- updated documentation wrt. new repository layout
- temporarily switched off Homebrew --HEAD building (can only be switched on after release)
- set copyright date to 2018
2018-02-01 22:20:26 +01:00
Théo DELRIEU 14cd019861
fix cmake install directory (for real this time)
* Rename 'develop' folder to 'include/nlohmann'
* Rename 'src' folder to 'single_include/nlohmann'
* Use <nlohmann/*> headers in sources and tests
* Change amalgamate config file
2018-02-01 11:06:51 +01:00