36 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
		
		
			
		
	
	
			36 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			C++
		
	
	
	
|  | //     __ _____ _____ _____
 | ||
|  | //  __|  |   __|     |   | |  JSON for Modern C++
 | ||
|  | // |  |  |__   |  |  | | | |  version 3.11.3
 | ||
|  | // |_____|_____|_____|_|___|  https://github.com/nlohmann/json
 | ||
|  | //
 | ||
|  | // SPDX-FileCopyrightText: 2013-2023 Niels Lohmann <https://nlohmann.me>
 | ||
|  | // SPDX-License-Identifier: MIT
 | ||
|  | 
 | ||
|  | #pragma once
 | ||
|  | 
 | ||
|  | #include <nlohmann/detail/abi_macros.hpp>
 | ||
|  | #include <nlohmann/detail/iterators/primitive_iterator.hpp>
 | ||
|  | 
 | ||
|  | NLOHMANN_JSON_NAMESPACE_BEGIN | ||
|  | namespace detail | ||
|  | { | ||
|  | 
 | ||
|  | /*!
 | ||
|  | @brief an iterator value | ||
|  | 
 | ||
|  | @note This structure could easily be a union, but MSVC currently does not allow | ||
|  | unions members with complex constructors, see https://github.com/nlohmann/json/pull/105.
 | ||
|  | */ | ||
|  | template<typename BasicJsonType> struct internal_iterator | ||
|  | { | ||
|  |     /// iterator for JSON objects
 | ||
|  |     typename BasicJsonType::object_t::iterator object_iterator {}; | ||
|  |     /// iterator for JSON arrays
 | ||
|  |     typename BasicJsonType::array_t::iterator array_iterator {}; | ||
|  |     /// generic iterator for all other types
 | ||
|  |     primitive_iterator_t primitive_iterator {}; | ||
|  | }; | ||
|  | 
 | ||
|  | }  // namespace detail
 | ||
|  | NLOHMANN_JSON_NAMESPACE_END |