Myra Canyon  v0.0.1-768
network control
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Json::FastWriter Class Reference

Outputs a Value in JSON format without formatting (not human friendly). More...

#include "json.h"

Inheritance diagram for Json::FastWriter:
Collaboration diagram for Json::FastWriter:

Public Member Functions

 FastWriter ()
 
virtual ~FastWriter ()
 
void enableYAMLCompatibility ()
 
void dropNullPlaceholders ()
 Drop the "null" string from the writer's output for nullValues. More...
 
void omitEndingLineFeed ()
 
virtual std::string write (const Value &root)
 

Private Member Functions

void writeValue (const Value &value)
 

Private Attributes

std::string document_
 
bool yamlCompatiblityEnabled_
 
bool dropNullPlaceholders_
 
bool omitEndingLineFeed_
 

Detailed Description

Outputs a Value in JSON format without formatting (not human friendly).

The JSON document is written in a single line. It is not intended for 'human' consumption, but may be usefull to support feature such as RPC where bandwith is limited.

See also
Reader, Value

Constructor & Destructor Documentation

Json::FastWriter::FastWriter ( )
virtual Json::FastWriter::~FastWriter ( )
inlinevirtual

Member Function Documentation

void Json::FastWriter::dropNullPlaceholders ( )

Drop the "null" string from the writer's output for nullValues.

Strictly speaking, this is not valid JSON. But when the output is being fed to a browser's Javascript, it makes for smaller output and the browser can handle the output just fine.

void Json::FastWriter::enableYAMLCompatibility ( )
void Json::FastWriter::omitEndingLineFeed ( )
std::string Json::FastWriter::write ( const Value root)
virtual

Implements Json::Writer.

Here is the call graph for this function:

void Json::FastWriter::writeValue ( const Value value)
private

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

std::string Json::FastWriter::document_
private
bool Json::FastWriter::dropNullPlaceholders_
private
bool Json::FastWriter::omitEndingLineFeed_
private
bool Json::FastWriter::yamlCompatiblityEnabled_
private

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