mirror of
https://github.com/nlohmann/json.git
synced 2025-07-27 00:41:05 +03:00
* 🔥 consolidate documentation * ♻️ overwork std specializations * 🚚 move images files to mkdocs * ♻️ fix URLs * 🔧 tweak MkDocs configuration * 🔧 add namespaces * 📝 document deprecations * 📝 document documentation generation * 🚸 improve search * 🚸 add examples * 🚧 start adding documentation for macros * 📝 add note for https://github.com/nlohmann/json/issues/874#issuecomment-1001699139 * 📝 overwork example handling * 📝 fix Markdown tables
36 lines
908 B
Markdown
36 lines
908 B
Markdown
# <small>nlohmann::</small>adl_serializer
|
|
|
|
```cpp
|
|
template<typename, typename>
|
|
struct adl_serializer;
|
|
```
|
|
|
|
Serializer that uses ADL ([Argument-Dependent Lookup](https://en.cppreference.com/w/cpp/language/adl)) to choose
|
|
`to_json`/`from_json` functions from the types' namespaces.
|
|
|
|
It is implemented similar to
|
|
|
|
```cpp
|
|
template<typename ValueType>
|
|
struct adl_serializer {
|
|
template<typename BasicJsonType>
|
|
static void to_json(BasicJsonType& j, const T& value) {
|
|
// calls the "to_json" method in T's namespace
|
|
}
|
|
|
|
template<typename BasicJsonType>
|
|
static void from_json(const BasicJsonType& j, T& value) {
|
|
// same thing, but with the "from_json" method
|
|
}
|
|
};
|
|
```
|
|
|
|
## Member functions
|
|
|
|
- [**from_json**](from_json.md) - convert a JSON value to any value type
|
|
- [**to_json**](to_json.md) - convert any value type to a JSON value
|
|
|
|
## Version history
|
|
|
|
- Added in version 2.1.0.
|