json/docs/mkdocs/docs/api/macros
Florian Albrechtskirchinger d909f80960
Add versioned, ABI-tagged inline namespace and namespace macros (#3590)
* Add versioned inline namespace

Add a versioned inline namespace to prevent ABI issues when linking code
using multiple library versions.

* Add namespace macros

* Encode ABI information in inline namespace

Add _diag suffix to inline namespace if JSON_DIAGNOSTICS is enabled, and
_ldvcmp suffix if JSON_USE_LEGACY_DISCARDED_VALUE_COMPARISON is enabled.

* Move ABI-affecting macros into abi_macros.hpp

* Move std_fs namespace definition into std_fs.hpp

* Remove std_fs namespace from unit test

* Format more files in tests directory

* Add unit tests

* Update documentation

* Fix GDB pretty printer

* fixup! Add namespace macros

* Derive ABI prefix from NLOHMANN_JSON_VERSION_*
2022-07-30 21:59:13 +02:00
..
index.md Add versioned, ABI-tagged inline namespace and namespace macros (#3590) 2022-07-30 21:59:13 +02:00
json_assert.md Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
json_diagnostics.md Add versioned, ABI-tagged inline namespace and namespace macros (#3590) 2022-07-30 21:59:13 +02:00
json_disable_enum_serialization.md 📝 minor fixes (#3592) 2022-07-20 18:59:04 +02:00
json_has_cpp_11.md Complete documentation for 3.11.0 (#3464) 2022-05-17 13:08:56 +02:00
json_has_filesystem.md Complete documentation for 3.11.0 (#3464) 2022-05-17 13:08:56 +02:00
json_has_ranges.md Fix C++20/gcc-12 issues (Part 2) (#3446) 2022-05-29 13:08:06 +02:00
json_has_three_way_comparison.md Fix C++20/gcc-12 issues (Part 2) (#3446) 2022-05-29 13:08:06 +02:00
json_no_io.md Complete documentation for 3.11.0 (#3464) 2022-05-17 13:08:56 +02:00
json_noexception.md Complete documentation for 3.11.0 (#3464) 2022-05-17 13:08:56 +02:00
json_skip_library_version_check.md Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
json_skip_unsupported_compiler_check.md Complete documentation for 3.11.0 (#3464) 2022-05-17 13:08:56 +02:00
json_throw_user.md Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
json_use_implicit_conversions.md Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
json_use_legacy_discarded_value_comparison.md Fix C++20/gcc-12 issues (Part 2) (#3446) 2022-05-29 13:08:06 +02:00
nlohmann_define_type_intrusive.md Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
nlohmann_define_type_non_intrusive.md Reorganize directories (#3462) 2022-05-01 09:41:50 +02:00
nlohmann_json_namespace_begin.md Add versioned, ABI-tagged inline namespace and namespace macros (#3590) 2022-07-30 21:59:13 +02:00
nlohmann_json_namespace.md Add versioned, ABI-tagged inline namespace and namespace macros (#3590) 2022-07-30 21:59:13 +02:00
nlohmann_json_serialize_enum.md Allow disabling default enum conversions (#3536) 2022-06-16 19:34:32 +02:00
nlohmann_json_version_major.md Complete documentation for 3.11.0 (#3464) 2022-05-17 13:08:56 +02:00