mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			59 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // ArduinoJson - https://arduinojson.org
 | |
| // Copyright © 2014-2022, Benoit BLANCHON
 | |
| // MIT License
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| #include <ArduinoJson/Strings/String.hpp>
 | |
| #include <ArduinoJson/Variant/VariantConstRef.hpp>
 | |
| #include <ArduinoJson/Variant/VariantRef.hpp>
 | |
| 
 | |
| namespace ARDUINOJSON_NAMESPACE {
 | |
| // A key value pair for CollectionData.
 | |
| class JsonPair {
 | |
|  public:
 | |
|   JsonPair(MemoryPool* pool, VariantSlot* slot) {
 | |
|     if (slot) {
 | |
|       _key = String(slot->key(),
 | |
|                     slot->ownsKey() ? String::Copied : String::Linked);
 | |
|       _value = VariantRef(pool, slot->data());
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   String key() const {
 | |
|     return _key;
 | |
|   }
 | |
| 
 | |
|   VariantRef value() const {
 | |
|     return _value;
 | |
|   }
 | |
| 
 | |
|  private:
 | |
|   String _key;
 | |
|   VariantRef _value;
 | |
| };
 | |
| 
 | |
| class JsonPairConst {
 | |
|  public:
 | |
|   JsonPairConst(const VariantSlot* slot) {
 | |
|     if (slot) {
 | |
|       _key = String(slot->key(),
 | |
|                     slot->ownsKey() ? String::Copied : String::Linked);
 | |
|       _value = VariantConstRef(slot->data());
 | |
|     }
 | |
|   }
 | |
| 
 | |
|   String key() const {
 | |
|     return _key;
 | |
|   }
 | |
| 
 | |
|   VariantConstRef value() const {
 | |
|     return _value;
 | |
|   }
 | |
| 
 | |
|  private:
 | |
|   String _key;
 | |
|   VariantConstRef _value;
 | |
| };
 | |
| }  // namespace ARDUINOJSON_NAMESPACE
 |