mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Added wildcard key (*) for filters (closes #1309)
				
					
				
			This commit is contained in:
		| @@ -24,6 +24,7 @@ v6.16.0 (2020-08-01) | |||||||
| * Added comparisons (`>`, `>=`, `==`, `!=`, `<`, and `<=`) between `JsonVariant`s | * Added comparisons (`>`, `>=`, `==`, `!=`, `<`, and `<=`) between `JsonVariant`s | ||||||
| * Added string deduplication (issue #1303) | * Added string deduplication (issue #1303) | ||||||
| * Added `JsonString::operator!=` | * Added `JsonString::operator!=` | ||||||
|  | * Added wildcard key (`*`) for filters (issue #1309) | ||||||
| * Set `ARDUINOJSON_DECODE_UNICODE` to `1` by default | * Set `ARDUINOJSON_DECODE_UNICODE` to `1` by default | ||||||
| * Fixed `copyArray()` not working with `String`, `ElementProxy`, and `MemberProxy` | * Fixed `copyArray()` not working with `String`, `ElementProxy`, and `MemberProxy` | ||||||
| * Fixed error `getOrAddElement is not a member of ElementProxy` (issue #1311) | * Fixed error `getOrAddElement is not a member of ElementProxy` (issue #1311) | ||||||
|   | |||||||
| @@ -214,6 +214,15 @@ TEST_CASE("Filtering") { | |||||||
|       "{\"example\":{\"outcome\":42}}", |       "{\"example\":{\"outcome\":42}}", | ||||||
|       2 * JSON_OBJECT_SIZE(1) + 16 |       2 * JSON_OBJECT_SIZE(1) + 16 | ||||||
|     }, |     }, | ||||||
|  |     { | ||||||
|  |       // wildcard | ||||||
|  |       "{\"example\":{\"type\":\"int\",\"outcome\":42}}", | ||||||
|  |       "{\"*\":{\"outcome\":true}}", | ||||||
|  |       10, | ||||||
|  |       DeserializationError::Ok, | ||||||
|  |       "{\"example\":{\"outcome\":42}}", | ||||||
|  |       2 * JSON_OBJECT_SIZE(1) + 16 | ||||||
|  |     }, | ||||||
|     { |     { | ||||||
|       // only the first element of array counts |       // only the first element of array counts | ||||||
|       "[1,2,3]", |       "[1,2,3]", | ||||||
|   | |||||||
| @@ -33,7 +33,7 @@ class Filter { | |||||||
|     if (_variant == true)  // "true" means "allow recursively" |     if (_variant == true)  // "true" means "allow recursively" | ||||||
|       return *this; |       return *this; | ||||||
|     else |     else | ||||||
|       return Filter(_variant[key]); |       return Filter(_variant[key] | _variant["*"]); | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  private: |  private: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user