Commit Graph

628 Commits

Author SHA1 Message Date
Niels Lohmann
6a810733d5 🎨 reindent code 2021-08-08 08:56:45 +08:00
Niels Lohmann
fdb0f072cd avoid string in case of empty objects 2021-08-08 08:56:44 +08:00
Niels Lohmann
2668c896c0 🚨 fix format-truncation warning #2572 2021-08-08 08:54:56 +08:00
Niels Lohmann
2d994d9452 🔨 remove noexcept annotation 2021-08-07 21:46:26 +08:00
Niels Lohmann
94e87ff6af 💡 add comment to describe j.m_value.destroy(j.m_type) calls 2021-08-07 21:46:26 +08:00
Niels Lohmann
519dcc5029 🐛 fix leak for all types 2021-08-07 21:46:26 +08:00
Niels Lohmann
3675770d22 🐛 fix leak for strings 2021-08-07 21:46:26 +08:00
Niels Lohmann
88ea375f39 🐛 fix leak for strings 2021-08-07 21:46:26 +08:00
Niels Lohmann
5bbbe5fbfa 🐛 fix leak for strings 2021-08-07 21:46:26 +08:00
Niels Lohmann
e77ae77d7e ♻️ simplify destroy() function for primitive types 2021-08-07 21:46:26 +08:00
Niels Lohmann
8b643e4362 🚨 fix warnings 2021-08-07 21:46:25 +08:00
Niels Lohmann
45c77b1c72 ♻️ move capacity check to set_parent function 2021-08-07 21:46:25 +08:00
Niels Lohmann
44a7dceb04 🔥 remove duplicated line 2021-08-07 21:46:25 +08:00
Niels Lohmann
a5fd035506 🐛 fix logics 2021-08-07 21:46:25 +08:00
Niels Lohmann
714d9f56f8 🐛 fix assertion failure #2838 2021-08-07 21:46:25 +08:00
David Pfahler
eeb48dd0a7 fixed amalgation file for #2728 2021-08-07 21:46:25 +08:00
David Pfahler
378fbda911 fixed amalgation file for #2728 2021-08-07 21:46:25 +08:00
Chaoya Li
35c37c8ab5 Renamed default_obj in to avoid name clashes 2021-06-28 18:06:46 +08:00
Chaoya Li
7aeda9d433 Reverted changes for NLOHMANN_DEFINE_TYPE_INTRUSIVE and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE; added new macros NLOHMANN_DEFINE_TYPE_INTRUSIVE_WITH_DEFAULT and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE_WITH_DEFAULT 2021-06-22 09:00:11 +08:00
Chaoya Li
76f6740e30 Allow default values for NLOHMANN_DEFINE_TYPE_INTRUSIVE and NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE 2021-06-15 10:14:44 +08:00
Niels Lohmann
b08139ea4b
♻️ replace EOF with std::char_traits<char>::eof() 2021-05-04 10:22:34 +02:00
Niels Lohmann
d0ab2b86c3
📝 update documentation 2021-04-29 17:19:57 +02:00
Niels Lohmann
8a29a6ecf4
Merge pull request #2731 from theShmoo/custom-cpp-version
Fixes #2730
2021-04-29 09:55:16 +02:00
Niels Lohmann
cdfe865486
📝 add documentation for numbers 2021-04-28 20:33:05 +02:00
David Pfahler
d140a1c777 fixed amalgamation file 2021-04-26 08:39:24 +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
6b267e3cb1 fixed amalgation file for #2730 2021-04-21 12:53:58 +02:00
David Pfahler
38952643c5 generate amalgation to fix CI for #2730 2021-04-21 12:46:37 +02:00
raduteo
e8dbd7be86
Update json.hpp
Proposed fix for #2706
2021-04-09 09:35:58 -04:00
Anthony VH
2b865131d8 Fixing CI errors. 2021-03-24 23:33:21 +01:00
Niels Lohmann
41dbd50313
📄 use code from Google Abseil 2021-03-24 13:27:00 +01:00
Anthony VH
322bc99d8e Reran amalgamate. 2021-03-24 13:03:36 +01: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
Remy Jette
0a9ec38f44 Remove HEDLEY annotation from exception::what()
The latest MSVC compiler throws the following warning on
nlohmann::detail::exception::what() if /analyze is enabled:

```
vcruntime_exception.h(93) : warning C28204: 'what' has an override at
`nlohmann\json\develop\single_include\nlohmann\json.hpp(2644)`
and only the override is annotated for return: when an override is
annotated, the base (this function) should be similarly annotated.
```

See https://godbolt.org/z/r331h4
2021-03-15 17:45:40 -07:00
Niels Lohmann
176d8e261a
Merge pull request #2562 from nlohmann/diagnostics
Better diagnostics
2021-02-10 07:20:54 +01:00
Niels Lohmann
bb90e34d22
⬆️ Hedley v15 2021-02-07 17:47:08 +01:00
Niels Lohmann
56a6dec0de
🔀 merge develop branch 2021-02-07 17:46:11 +01:00
Niels Lohmann
6d4eed5aeb
🚨 fix warning 2021-01-30 12:51:54 +01:00
Niels Lohmann
ffdeb77468
🚨 fix warnings #2615 2021-01-27 12:54:46 +01:00
Anthony VH
130382f2a9 Remove comment about GCC commit which didn't really relate to the code. 2021-01-24 20:02:24 +01:00
Anthony VH
848927ae90 Updated comments as requested. 2021-01-23 18:24:47 +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
d7c0f157c5 Merged from_json for pair and tuple to try to fix C2995 error in old MSVC versions. 2021-01-13 20:47:03 +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
fc8c584288 Regenerated single include. 2021-01-12 18:29:05 +01:00
Anthony VH
672e8bfc1d Fixed std::pair trying to deserialize via array functions. 2021-01-11 18:16:15 +01:00
Anthony VH
23f462b598 Reduced code duplication, renamed tag to identity_tag. 2021-01-10 19:23:32 +01:00
Anthony VH
c0a8b45bbb Renamed template parameter and added some comments. 2021-01-09 17:45:56 +01:00
Anthony VH
1e825e4f92 Add support for deserialization of STL containers of non-default constructable types (fixes #2574). 2021-01-09 00:08:27 +01:00