JsonCpp project page | Classes | Namespace | JsonCpp home page

Public Member Functions | List of all members
Json::StyledWriter Class Reference

Writes a Value in JSON format in a human friendly way. More...

`#include <json/writer.h>`

Inheritance diagram for Json::StyledWriter:
Collaboration diagram for Json::StyledWriter:

## Public Member Functions
| StyledWriter ()
| ~StyledWriter () override=default
String | write (const Value &root) override
| Serialize a Value in JSON format.
Public Member Functions inherited from Json::Writer
virtual | ~Writer ()

## Detailed Description

Writes a Value in JSON format in a human friendly way.

The rules for line break and indent are as follow:

- Object value:
  - if empty then print {} without indent and line break
  - if not empty the print '{', line break & indent, print one value per line and then unindent and line break and print '}'.
- Array value:
  - if empty then print [] without indent and line break
  - if the array contains no object value, empty array or some other value types, and all the values fit on one lines, then print the array on a single line.
  - otherwise, it the values do not fit on one line, or the array contains object or non empty array, then print one value per line.

If the Value have comments then they are outputted according to their CommentPlacement.

See also
  Reader, Value, Value::setComment()

Deprecated
  Use StreamWriterBuilder.

Definition at line 230 of file writer.h.

## Constructor & Destructor Documentation

## ◆ StyledWriter()

Json::StyledWriter::StyledWriter | ( |  | ) |
| default

## ◆ ~StyledWriter()

Json::StyledWriter::~StyledWriter | ( |  | ) |
| overridedefault

## Member Function Documentation

## ◆ write()

String Json::StyledWriter::write | ( | const Value & | root | ) |
| overridevirtual

Serialize a Value in JSON format.

Parameters

  root | Value to serialize.

Returns
  String containing the JSON document that represents the root value.

Implements Json::Writer.

Definition at line 444 of file json_writer.cpp.

The documentation for this class was generated from the following files:

- include/json/writer.h
- src/lib_json/json_writer.cpp