mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			97 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			97 lines
		
	
	
		
			2.0 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| // Copyright Benoit Blanchon 2014-2015
 | |
| // MIT License
 | |
| //
 | |
| // Arduino JSON library
 | |
| // https://github.com/bblanchon/ArduinoJson
 | |
| 
 | |
| #pragma once
 | |
| 
 | |
| namespace ArduinoJson {
 | |
| 
 | |
| // Forward declarations
 | |
| class JsonArray;
 | |
| class JsonObject;
 | |
| 
 | |
| namespace Internals {
 | |
| template <>
 | |
| inline bool JsonVariantContent::as<bool>() const {
 | |
|   return asBoolean;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline char const* JsonVariantContent::as<char const*>() const {
 | |
|   return asString;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline double JsonVariantContent::as<double>() const {
 | |
|   return asDouble;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline float JsonVariantContent::as<float>() const {
 | |
|   return static_cast<float>(asDouble);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline JsonArray& JsonVariantContent::as<JsonArray&>() const {
 | |
|   return *asArray;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline const JsonArray& JsonVariantContent::as<JsonArray const&>() const {
 | |
|   return *asArray;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline JsonObject& JsonVariantContent::as<JsonObject&>() const {
 | |
|   return *asObject;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline const JsonObject& JsonVariantContent::as<JsonObject const&>() const {
 | |
|   return *asObject;
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline signed char JsonVariantContent::as<signed char>() const {
 | |
|   return static_cast<signed char>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline signed int JsonVariantContent::as<signed int>() const {
 | |
|   return static_cast<signed int>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline signed long JsonVariantContent::as<signed long>() const {
 | |
|   return static_cast<signed long>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline signed short JsonVariantContent::as<signed short>() const {
 | |
|   return static_cast<signed short>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline unsigned char JsonVariantContent::as<unsigned char>() const {
 | |
|   return static_cast<unsigned char>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline unsigned int JsonVariantContent::as<unsigned int>() const {
 | |
|   return static_cast<unsigned int>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline unsigned long JsonVariantContent::as<unsigned long>() const {
 | |
|   return static_cast<unsigned long>(asLong);
 | |
| }
 | |
| 
 | |
| template <>
 | |
| inline unsigned short JsonVariantContent::as<unsigned short>() const {
 | |
|   return static_cast<unsigned short>(asLong);
 | |
| }
 | |
| }
 | |
| }
 |