diff --git a/JsonGenerator.cpp b/JsonGenerator.cpp index e4a4148e..9aaffce1 100644 --- a/JsonGenerator.cpp +++ b/JsonGenerator.cpp @@ -6,6 +6,7 @@ // This file is here to help the Arduino IDE find the .cpp files #include "JsonGenerator/EscapedString.cpp" +#include "JsonGenerator/IndentedPrintDecorator.cpp" #include "JsonGenerator/JsonArrayBase.cpp" #include "JsonGenerator/JsonObjectBase.cpp" #include "JsonGenerator/JsonValue.cpp" diff --git a/JsonGenerator/JsonPrintable.h b/JsonGenerator/JsonPrintable.h index e29bf891..8d2b7bb0 100644 --- a/JsonGenerator/JsonPrintable.h +++ b/JsonGenerator/JsonPrintable.h @@ -8,6 +8,7 @@ #include "JsonValue.h" #include "Print.h" #include "Printable.h" +#include "IndentedPrintDecorator.h" namespace ArduinoJson { @@ -25,6 +26,12 @@ namespace ArduinoJson return printTo(sb); } + size_t prettyPrintTo(Print& p) const + { + IndentedPrintDecorator decorator(p); + return printTo(decorator); + } + virtual size_t printTo(Print& p) const = 0; }; } diff --git a/examples/JsonGeneratorExample/JsonGeneratorExample.ino b/examples/JsonGeneratorExample/JsonGeneratorExample.ino index 70eeb100..faf218d3 100644 --- a/examples/JsonGeneratorExample/JsonGeneratorExample.ino +++ b/examples/JsonGeneratorExample/JsonGeneratorExample.ino @@ -21,6 +21,9 @@ void setup() root["data"] = array; Serial.print(root); // {"sensor":"gps","time":1351824120,"data":[48.756080,2.302038]} + + Serial.println(); + root.prettyPrintTo(Serial); // same string indented } void loop()