mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Renamed JsonSink into Print
This commit is contained in:
		| @@ -37,23 +37,23 @@ private: | |||||||
|     JsonValue items[N]; |     JsonValue items[N]; | ||||||
|     int itemCount; |     int itemCount; | ||||||
|  |  | ||||||
|     virtual size_t writeTo(JsonSink& sb) |     virtual size_t writeTo(Print& p) | ||||||
|     { |     { | ||||||
|         size_t n = 0; |         size_t n = 0; | ||||||
|          |          | ||||||
|         n += sb.write("["); |         n += p.write("["); | ||||||
|  |  | ||||||
|         for (int i = 0; i < itemCount; i++) |         for (int i = 0; i < itemCount; i++) | ||||||
|         { |         { | ||||||
|             if (i > 0) |             if (i > 0) | ||||||
|             { |             { | ||||||
|                 n += sb.write(","); |                 n += p.write(","); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             n += items[i].writeTo(sb); |             n += items[i].writeTo(p); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         n += sb.write("]"); |         n += p.write("]"); | ||||||
|  |  | ||||||
|         return n; |         return n; | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -92,7 +92,7 @@ | |||||||
|     <ClInclude Include="JsonArray.h" /> |     <ClInclude Include="JsonArray.h" /> | ||||||
|     <ClInclude Include="JsonHashTable.h" /> |     <ClInclude Include="JsonHashTable.h" /> | ||||||
|     <ClInclude Include="JsonObjectBase.h" /> |     <ClInclude Include="JsonObjectBase.h" /> | ||||||
|     <ClInclude Include="JsonSink.h" /> |     <ClInclude Include="Print.h" /> | ||||||
|     <ClInclude Include="JsonValue.h" /> |     <ClInclude Include="JsonValue.h" /> | ||||||
|     <ClInclude Include="StringBuilder.h" /> |     <ClInclude Include="StringBuilder.h" /> | ||||||
|   </ItemGroup> |   </ItemGroup> | ||||||
|   | |||||||
| @@ -47,7 +47,7 @@ | |||||||
|     <ClInclude Include="JsonArray.h"> |     <ClInclude Include="JsonArray.h"> | ||||||
|       <Filter>Header Files</Filter> |       <Filter>Header Files</Filter> | ||||||
|     </ClInclude> |     </ClInclude> | ||||||
|     <ClInclude Include="JsonSink.h"> |     <ClInclude Include="Print.h"> | ||||||
|       <Filter>Header Files</Filter> |       <Filter>Header Files</Filter> | ||||||
|     </ClInclude> |     </ClInclude> | ||||||
|   </ItemGroup> |   </ItemGroup> | ||||||
|   | |||||||
| @@ -45,11 +45,11 @@ private: | |||||||
|     KeyValuePair items[N]; |     KeyValuePair items[N]; | ||||||
|     int itemCount; |     int itemCount; | ||||||
|  |  | ||||||
|     virtual size_t writeTo(JsonSink& sink) |     virtual size_t writeTo(Print& p) | ||||||
|     { |     { | ||||||
|         size_t n = 0; |         size_t n = 0; | ||||||
|  |  | ||||||
|         n += sink.write('{'); |         n += p.write('{'); | ||||||
|  |  | ||||||
|         for (int i = 0; i < itemCount; i++) |         for (int i = 0; i < itemCount; i++) | ||||||
|         { |         { | ||||||
| @@ -57,15 +57,15 @@ private: | |||||||
|  |  | ||||||
|             if (i > 0) |             if (i > 0) | ||||||
|             { |             { | ||||||
|                 n += sink.write(','); |                 n += p.write(','); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             n += key.writeTo(sink); |             n += key.writeTo(p); | ||||||
|             n += sink.write(':'); |             n += p.write(':'); | ||||||
|             n += items[i].value.writeTo(sink); |             n += items[i].value.writeTo(p); | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         n += sink.write('}'); |         n += p.write('}'); | ||||||
|  |  | ||||||
|         return n; |         return n; | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -6,7 +6,7 @@ | |||||||
| #pragma once | #pragma once | ||||||
|  |  | ||||||
| #include "JsonValue.h" | #include "JsonValue.h" | ||||||
| #include "JsonSink.h" | #include "Print.h" | ||||||
|  |  | ||||||
| class JsonObjectBase | class JsonObjectBase | ||||||
| { | { | ||||||
| @@ -18,6 +18,6 @@ public: | |||||||
|         return writeTo(sb); |         return writeTo(sb); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     virtual size_t writeTo(JsonSink& sb) = 0; |     virtual size_t writeTo(Print& p) = 0; | ||||||
| }; | }; | ||||||
|  |  | ||||||
|   | |||||||
| @@ -8,82 +8,82 @@ | |||||||
| #include <cstdio> | #include <cstdio> | ||||||
| #include <cstring> | #include <cstring> | ||||||
|  |  | ||||||
| size_t JsonValue::writeBooleanTo(JsonSink& sb) | size_t JsonValue::writeBooleanTo(Print& p) | ||||||
| { | { | ||||||
|     return sb.write(content.boolean ? "true" : "false"); |     return p.write(content.boolean ? "true" : "false"); | ||||||
| } | } | ||||||
|  |  | ||||||
| size_t JsonValue::writeNumberTo(JsonSink& sb) | size_t JsonValue::writeNumberTo(Print& p) | ||||||
| { | { | ||||||
|     char tmp[16]; |     char tmp[16]; | ||||||
|  |  | ||||||
|     _snprintf(tmp, sizeof(tmp), "%lg", content.number); |     _snprintf(tmp, sizeof(tmp), "%lg", content.number); | ||||||
|  |  | ||||||
|     return sb.write(tmp); |     return p.write(tmp); | ||||||
| } | } | ||||||
|  |  | ||||||
| size_t JsonValue::writeObjectTo(JsonSink& sink) | size_t JsonValue::writeObjectTo(Print& p) | ||||||
| { | { | ||||||
|     if (content.object) |     if (content.object) | ||||||
|         return ((JsonObjectBase*)content.object)->writeTo(sink); |         return ((JsonObjectBase*)content.object)->writeTo(p); | ||||||
|     else |     else | ||||||
|         return sink.write("null"); |         return p.write("null"); | ||||||
| } | } | ||||||
|  |  | ||||||
| size_t JsonValue::writeStringTo(JsonSink& sink) | size_t JsonValue::writeStringTo(Print& p) | ||||||
| { | { | ||||||
|     auto s = content.string; |     auto s = content.string; | ||||||
|  |  | ||||||
|     if (!s) |     if (!s) | ||||||
|     { |     { | ||||||
|         return sink.write("null"); |         return p.write("null"); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     size_t n = 0; |     size_t n = 0; | ||||||
|  |  | ||||||
|     n += sink.write('\"'); |     n += p.write('\"'); | ||||||
|  |  | ||||||
|     while (*s) |     while (*s) | ||||||
|     { |     { | ||||||
|         switch (*s) |         switch (*s) | ||||||
|         { |         { | ||||||
|         case '"': |         case '"': | ||||||
|             n += sink.write("\\\""); |             n += p.write("\\\""); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         case '\\': |         case '\\': | ||||||
|             n += sink.write("\\\\"); |             n += p.write("\\\\"); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         case '\b': |         case '\b': | ||||||
|             n += sink.write("\\b"); |             n += p.write("\\b"); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         case '\f': |         case '\f': | ||||||
|             n += sink.write("\\f"); |             n += p.write("\\f"); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         case '\n': |         case '\n': | ||||||
|             n += sink.write("\\n"); |             n += p.write("\\n"); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         case '\r': |         case '\r': | ||||||
|             n += sink.write("\\r"); |             n += p.write("\\r"); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         case '\t': |         case '\t': | ||||||
|             n += sink.write("\\t"); |             n += p.write("\\t"); | ||||||
|             break; |             break; | ||||||
|  |  | ||||||
|         default: |         default: | ||||||
|             n += sink.write(*s); |             n += p.write(*s); | ||||||
|             break; |             break; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         s++; |         s++; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     n += sink.write('\"'); |     n += p.write('\"'); | ||||||
|  |  | ||||||
|     return n; |     return n; | ||||||
| } | } | ||||||
| @@ -41,10 +41,10 @@ public: | |||||||
|         content.object = &value; |         content.object = &value; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     size_t writeTo(JsonSink& sink) |     size_t writeTo(Print& p) | ||||||
|     { |     { | ||||||
|         // handmade polymorphism |         // handmade polymorphism | ||||||
|         return (this->*implementation)(sink); |         return (this->*implementation)(p); | ||||||
|     } |     } | ||||||
|      |      | ||||||
| private: | private: | ||||||
| @@ -59,10 +59,10 @@ private: | |||||||
|  |  | ||||||
|     Content content; |     Content content; | ||||||
|  |  | ||||||
|     size_t (JsonValue::*implementation)(JsonSink& sb); |     size_t(JsonValue::*implementation)(Print& p); | ||||||
|  |  | ||||||
|     size_t writeBooleanTo(JsonSink& sb); |     size_t writeBooleanTo(Print& p); | ||||||
|     size_t writeNumberTo(JsonSink& sb); |     size_t writeNumberTo(Print& p); | ||||||
|     size_t writeObjectTo(JsonSink& sb); |     size_t writeObjectTo(Print& p); | ||||||
|     size_t writeStringTo(JsonSink& sb); |     size_t writeStringTo(Print& p); | ||||||
| }; | }; | ||||||
| @@ -5,7 +5,7 @@ | |||||||
| 
 | 
 | ||||||
| #pragma once | #pragma once | ||||||
| 
 | 
 | ||||||
| class JsonSink | class Print | ||||||
| { | { | ||||||
| public: | public: | ||||||
| 
 | 
 | ||||||
| @@ -5,9 +5,9 @@ | |||||||
|  |  | ||||||
| #pragma once | #pragma once | ||||||
|  |  | ||||||
| #include "JsonSink.h" | #include "Print.h" | ||||||
|  |  | ||||||
| class StringBuilder : public JsonSink | class StringBuilder : public Print | ||||||
| { | { | ||||||
| public: | public: | ||||||
|     StringBuilder(char* buf, int size) |     StringBuilder(char* buf, int size) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user