Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
Json::StreamWriterBuilder Class Reference

Build a StreamWriter implementation. More...

#include <json.h>

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

Public Member Functions

virtual StreamWriternewStreamWriter () const
 
Valueoperator[] (std::string key)
 
 StreamWriterBuilder ()
 
bool validate (Json::Value *invalid) const
 
virtual ~StreamWriterBuilder ()
 
- Public Member Functions inherited from Json::StreamWriter::Factory
virtual ~Factory ()
 

Static Public Member Functions

static void setDefaults (Json::Value *settings)
 

Public Attributes

Json::Value settings_
 

Detailed Description

Build a StreamWriter implementation.

Usage:

using namespace Json;
Value value = ...;
builder["commentStyle"] = "None";
builder["indentation"] = " "; // or whatever you like
std::unique_ptr<Json::StreamWriter> writer(
builder.newStreamWriter());
writer->write(value, &std::cout);
std::cout << std::endl; // add lf and flush

Definition at line 1699 of file json.h.

Constructor & Destructor Documentation

Json::StreamWriterBuilder::StreamWriterBuilder ( )

Definition at line 5024 of file jsoncpp.cpp.

Json::StreamWriterBuilder::~StreamWriterBuilder ( )
virtual

Definition at line 5028 of file jsoncpp.cpp.

Member Function Documentation

StreamWriter * Json::StreamWriterBuilder::newStreamWriter ( ) const
virtual
Exceptions
std::exceptionif something goes wrong (e.g. invalid settings)

Implements Json::StreamWriter::Factory.

Definition at line 5030 of file jsoncpp.cpp.

Value & Json::StreamWriterBuilder::operator[] ( std::string  key)

A simple way to update a specific setting.

Definition at line 5084 of file jsoncpp.cpp.

void Json::StreamWriterBuilder::setDefaults ( Json::Value settings)
static

Called by ctor, but you can use this to reset settings_.

Precondition
'settings' != NULL (but Json::null is fine)
Remarks
Defaults:

[StreamWriterBuilderDefaults]

[StreamWriterBuilderDefaults]

Definition at line 5089 of file jsoncpp.cpp.

bool Json::StreamWriterBuilder::validate ( Json::Value invalid) const
Returns
true if 'settings' are legal and consistent; otherwise, indicate bad settings via 'invalid'.

Definition at line 5067 of file jsoncpp.cpp.

Member Data Documentation

Json::Value Json::StreamWriterBuilder::settings_

Configuration of this builder. Available settings (case-sensitive):

  • "commentStyle": "None" or "All"
  • "indentation": "<anything>"
  • "enableYAMLCompatibility": false or true
    • slightly change the whitespace around colons
  • "dropNullPlaceholders": false or true
    • 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.

You can examine 'settings_` yourself to see the defaults. You can also write and read them just like any JSON Value.

See Also
setDefaults()

Definition at line 1720 of file json.h.


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


mission_planning
Author(s): ivan
autogenerated on Thu Nov 12 2015 19:08:20