mirror of
https://github.com/bblanchon/ArduinoJson.git
synced 2025-07-17 20:42:24 +02:00
55 lines
1.0 KiB
C
55 lines
1.0 KiB
C
![]() |
#pragma once
|
||
|
|
||
|
#include "JsonWriter.h"
|
||
|
#include "IndentedPrint.h"
|
||
|
|
||
|
using namespace ArduinoJson::Generator;
|
||
|
|
||
|
class PrettyJsonWriter : public JsonWriter
|
||
|
{
|
||
|
public:
|
||
|
explicit PrettyJsonWriter(IndentedPrint& sink)
|
||
|
: JsonWriter(sink), _indenter(sink)
|
||
|
{
|
||
|
}
|
||
|
|
||
|
virtual void beginArray()
|
||
|
{
|
||
|
_length += _sink.write('[');
|
||
|
_indenter.indent();
|
||
|
_length += _indenter.println();
|
||
|
}
|
||
|
|
||
|
virtual void endArray()
|
||
|
{
|
||
|
_length += _indenter.println();
|
||
|
_indenter.unindent();
|
||
|
_length += _sink.write(']');
|
||
|
}
|
||
|
|
||
|
virtual void writeColon()
|
||
|
{
|
||
|
_length += _sink.print(": ");
|
||
|
}
|
||
|
|
||
|
virtual void writeComma()
|
||
|
{
|
||
|
_length += _sink.write(',');
|
||
|
_length += _indenter.println();
|
||
|
}
|
||
|
|
||
|
virtual void beginObject()
|
||
|
{
|
||
|
_length += _sink.write('{');
|
||
|
}
|
||
|
|
||
|
virtual void endObject()
|
||
|
{
|
||
|
_length += _sink.write('}');
|
||
|
_indenter.unindent();
|
||
|
}
|
||
|
|
||
|
private:
|
||
|
IndentedPrint& _indenter;
|
||
|
};
|