1 #ifndef JSON_WRITER_H_INCLUDED 2 # define JSON_WRITER_H_INCLUDED 22 virtual std::string write(
const Value &root ) = 0;
37 void enableYAMLCompatibility();
40 virtual std::string write(
const Value &root );
43 void writeValue(
const Value &value );
78 virtual std::string write(
const Value &root );
81 void writeValue(
const Value &value );
82 void writeArrayValue(
const Value &value );
83 bool isMultineArray(
const Value &value );
84 void pushValue(
const std::string &value );
86 void writeWithIndent(
const std::string &value );
89 void writeCommentBeforeValue(
const Value &root );
90 void writeCommentAfterValueOnSameLine(
const Value &root );
91 bool hasCommentForValue(
const Value &value );
92 static std::string normalizeEOL(
const std::string &text );
136 void write( std::ostream &out,
const Value &root );
139 void writeValue(
const Value &value );
140 void writeArrayValue(
const Value &value );
141 bool isMultineArray(
const Value &value );
142 void pushValue(
const std::string &value );
144 void writeWithIndent(
const std::string &value );
147 void writeCommentBeforeValue(
const Value &root );
148 void writeCommentAfterValueOnSameLine(
const Value &root );
149 bool hasCommentForValue(
const Value &value );
150 static std::string normalizeEOL(
const std::string &text );
179 #endif // JSON_WRITER_H_INCLUDED int64_t Int64
Definition: forwards.h:24
#define JSON_API
Definition: config.h:40
std::vector< std::string > ChildValues
Definition: writer.h:152
std::string JSON_API valueToQuotedString(const char *value)
std::string indentation_
Definition: writer.h:158
unsigned int rightMargin_
Definition: writer.h:157
~StyledStreamWriter()
Definition: writer.h:128
bool addChildValues_
Definition: writer.h:101
Writes a Value in JSON format in a human friendly way, to a stream rather than to a string...
Definition: writer.h:124
int32_t Int
Definition: forwards.h:19
std::string document_
Definition: writer.h:97
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
bool addChildValues_
Definition: writer.h:159
Writes a Value in JSON format in a human friendly way.
Definition: writer.h:67
std::string JSON_API valueToString(Int value)
Represents a JSON value.
Definition: value.h:114
std::string indentString_
Definition: writer.h:156
Abstract class for writers.
Definition: writer.h:17
std::ostream & operator<<(std::ostream &, const Value &root)
Output using the StyledStreamWriter.
uint64_t UInt64
Definition: forwards.h:25
std::ostream * document_
Definition: writer.h:155
unsigned int indentSize_
Definition: writer.h:100
std::string document_
Definition: writer.h:45
uint32_t UInt
Definition: forwards.h:23
virtual ~FastWriter()
Definition: writer.h:35
ChildValues childValues_
Definition: writer.h:154
virtual ~StyledWriter()
Definition: writer.h:71
bool yamlCompatiblityEnabled_
Definition: writer.h:46
std::vector< std::string > ChildValues
Definition: writer.h:94
unsigned int rightMargin_
Definition: writer.h:99
Outputs a Value in JSON format without formatting (not human friendly).
Definition: writer.h:31
std::string indentString_
Definition: writer.h:98
ChildValues childValues_
Definition: writer.h:96