// __ _____ _____ _____ // __| | __| | | | JSON for Modern C++ (supporting code) // | | |__ | | | | | | version 3.12.0 // |_____|_____|_____|_|___| https://github.com/nlohmann/json // // SPDX-FileCopyrightText: 2013-2026 Niels Lohmann // SPDX-License-Identifier: MIT // This file contains the C++17-only part of unit-items.cpp (structured // bindings support for json::items()). It is kept in a separate // translation unit so the (much larger) unit-items.cpp does not need to // be compiled a second time just for this one SECTION. #include "doctest_compatibility.h" #include using nlohmann::json; #ifdef JSON_HAS_CPP_17 #include #include TEST_CASE("items()") { SECTION("object") { SECTION("structured bindings") { json j = { {"A", 1}, {"B", 2} }; std::map m; for (auto const&[key, value] : j.items()) { m.emplace(key, value); } CHECK(j.get() == m); } } } #endif