mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Auto enable std::string and stream on modern compilers (closes #1156)
This commit is contained in:
		| @@ -6,6 +6,8 @@ HEAD | ||||
|  | ||||
| * Added `BasicJsonDocument::shrinkToFit()` | ||||
| * Added support of `uint8_t` for `serializeJson()`, `serializeJsonPretty()`, and `serializeMsgPack()` (issue #1142) | ||||
| * Auto enable support for `std::string` and `std::stream` on modern compilers (issue #1156) | ||||
|   No need to define `ARDUINOJSON_ENABLE_STD_STRING` and `ARDUINOJSON_ENABLE_STD_STREAM`. | ||||
|  | ||||
| v6.13.0 (2019-11-01) | ||||
| ------- | ||||
|   | ||||
| @@ -31,6 +31,29 @@ | ||||
| #endif | ||||
| #endif | ||||
|  | ||||
| // Auto enable std::stream if the right headers are here and no conflicting | ||||
| // macro is defined | ||||
| #if !defined(ARDUINOJSON_ENABLE_STD_STREAM) && defined(__has_include) | ||||
| #if __has_include(<istream>) && \ | ||||
|     __has_include(<ostream>) && \ | ||||
|     !defined(min) && \ | ||||
|     !defined(max) | ||||
| #define ARDUINOJSON_ENABLE_STD_STREAM 1 | ||||
| #else | ||||
| #define ARDUINOJSON_ENABLE_STD_STREAM 0 | ||||
| #endif | ||||
| #endif | ||||
|  | ||||
| // Auto enable std::string if the right header is here and no conflicting | ||||
| // macro is defined | ||||
| #if !defined(ARDUINOJSON_ENABLE_STD_STRING) && defined(__has_include) | ||||
| #if __has_include(<string>) && !defined(min) && !defined(max) | ||||
| #define ARDUINOJSON_ENABLE_STD_STRING 1 | ||||
| #else | ||||
| #define ARDUINOJSON_ENABLE_STD_STRING 0 | ||||
| #endif | ||||
| #endif | ||||
|  | ||||
| #if ARDUINOJSON_EMBEDDED_MODE | ||||
|  | ||||
| // Store floats by default to reduce the memory usage (issue #134) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user