Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes
Json::StyledWriter Class Reference

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

#include <json.h>

Inheritance diagram for Json::StyledWriter:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 StyledWriter ()
virtual std::string write (const Value &root)
 Serialize a Value in JSON format.
virtual ~StyledWriter ()

Private Types

typedef std::vector< std::string > ChildValues

Private Member Functions

bool hasCommentForValue (const Value &value)
void indent ()
bool isMultineArray (const Value &value)
void pushValue (const std::string &value)
void unindent ()
void writeArrayValue (const Value &value)
void writeCommentAfterValueOnSameLine (const Value &root)
void writeCommentBeforeValue (const Value &root)
void writeIndent ()
void writeValue (const Value &value)
void writeWithIndent (const std::string &value)

Static Private Member Functions

static std::string normalizeEOL (const std::string &text)

Private Attributes

bool addChildValues_
ChildValues childValues_
std::string document_
int indentSize_
std::string indentString_
int rightMargin_

Detailed Description

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

The rules for line break and indent are as follow:

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

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

Definition at line 1732 of file json.h.


Member Typedef Documentation

typedef std::vector<std::string> Json::StyledWriter::ChildValues [private]

Definition at line 1759 of file json.h.


Constructor & Destructor Documentation

Definition at line 3661 of file jsoncpp.cpp.

virtual Json::StyledWriter::~StyledWriter ( ) [inline, virtual]

Definition at line 1736 of file json.h.


Member Function Documentation

bool Json::StyledWriter::hasCommentForValue ( const Value value) [private]

Definition at line 3901 of file jsoncpp.cpp.

void Json::StyledWriter::indent ( ) [private]

Definition at line 3861 of file jsoncpp.cpp.

bool Json::StyledWriter::isMultineArray ( const Value value) [private]

Definition at line 3797 of file jsoncpp.cpp.

std::string Json::StyledWriter::normalizeEOL ( const std::string &  text) [static, private]

Definition at line 3910 of file jsoncpp.cpp.

void Json::StyledWriter::pushValue ( const std::string &  value) [private]

Definition at line 3828 of file jsoncpp.cpp.

void Json::StyledWriter::unindent ( ) [private]

Definition at line 3868 of file jsoncpp.cpp.

std::string Json::StyledWriter::write ( const Value root) [virtual]

Serialize a Value in JSON format.

Parameters:
rootValue to serialize.
Returns:
String containing the JSON document that represents the root value.

Implements Json::Writer.

Definition at line 3669 of file jsoncpp.cpp.

void Json::StyledWriter::writeArrayValue ( const Value value) [private]

Definition at line 3744 of file jsoncpp.cpp.

Definition at line 3886 of file jsoncpp.cpp.

void Json::StyledWriter::writeCommentBeforeValue ( const Value root) [private]

Definition at line 3876 of file jsoncpp.cpp.

void Json::StyledWriter::writeIndent ( ) [private]

Definition at line 3838 of file jsoncpp.cpp.

void Json::StyledWriter::writeValue ( const Value value) [private]

Definition at line 3683 of file jsoncpp.cpp.

void Json::StyledWriter::writeWithIndent ( const std::string &  value) [private]

Definition at line 3853 of file jsoncpp.cpp.


Member Data Documentation

Definition at line 1766 of file json.h.

Definition at line 1761 of file json.h.

std::string Json::StyledWriter::document_ [private]

Definition at line 1762 of file json.h.

Definition at line 1765 of file json.h.

std::string Json::StyledWriter::indentString_ [private]

Definition at line 1763 of file json.h.

Definition at line 1764 of file json.h.


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


find_object_2d
Author(s): Mathieu Labbe
autogenerated on Thu Feb 11 2016 22:57:57