mirror of
https://github.com/nlohmann/json.git
synced 2026-02-21 02:46:26 +00:00
* 👥 update contributor and sponsor list * 🚧 document BJData format * 🚧 document BJData format * 📝 clarified documentation of [json.exception.parse_error.112] * ✏️ adjust titles * 📝 add more examples * 🚨 adjust warnings for index.md files * 📝 add more examples * 🔥 remove example for deprecated code * 📝 add missing enum entry * 📝 overwork table for binary formats * ✅ add test to create table for binary formats * 📝 fix wording in example * 📝 add more examples * Update iterators.md (#3481) * ✨ add check for overloads to linter #3455 * 👥 update contributor list * 📝 add more examples * 📝 fix documentation * 📝 add more examples * 🎨 fix indentation * 🔥 remove example for destructor * 📝 overwork documentation * Updated BJData documentation, #3464 (#3493) * update bjdata.md for #3464 * Minor edit * Fix URL typo * Add info on demoting ND array to a 1-D optimized array when singleton dimension Co-authored-by: Chaoqi Zhang <prncoprs@163.com> Co-authored-by: Qianqian Fang <fangqq@gmail.com>
1.5 KiB
1.5 KiB
JSON_HAS_FILESYSTEM / JSON_HAS_EXPERIMENTAL_FILESYSTEM
#define JSON_HAS_FILESYSTEM /* value */
#define JSON_HAS_EXPERIMENTAL_FILESYSTEM /* value */
When compiling with C++17, the library provides conversions from and to
std::filesystem::path. As compiler support for filesystem is
limited, the library tries to detect whether
<filesystem>/std::filesystem (JSON_HAS_FILESYSTEM) or
<experimental/filesystem>/std::experimental::filesystem
(JSON_HAS_EXPERIMENTAL_FILESYSTEM) should be used. To override the built-in check, define JSON_HAS_FILESYSTEM or
JSON_HAS_EXPERIMENTAL_FILESYSTEM to 1.
Default definition
The default value is detected based on the preprocessor macros #!cpp __cpp_lib_filesystem,
#!cpp __cpp_lib_experimental_filesystem, #!cpp __has_include(<filesystem>), or
#!cpp __has_include(<experimental/filesystem>).
Notes
- Note that older compilers or older versions of libstd++ also require the library
stdc++fsto be linked to for filesystem support. - Both macros are undefined outside the library.
Examples
??? example
The code below forces the library to use the header `<experimental/filesystem>`.
```cpp
#define JSON_HAS_EXPERIMENTAL_FILESYSTEM 1
#include <nlohmann/json.hpp>
...
```
Version history
- Added in version 3.10.5.