VR-Vantage 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags > Class Template Reference

JSON writer. More...

Inheritance diagram for Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >:
Inheritance graph
[legend]

Classes

struct  Level
 Information for each nested level. More...

Public Types

typedef SourceEncoding::Ch Ch

Public Member Functions

 Writer (OutputStream &os, StackAllocator *stackAllocator=0, size_t levelDepth=kDefaultLevelDepth)
 Constructor.
 Writer (StackAllocator *allocator=0, size_t levelDepth=kDefaultLevelDepth)
void Reset (OutputStream &os)
 Reset the writer with a new stream.
bool IsComplete () const
 Checks whether the output is a complete JSON.
int GetMaxDecimalPlaces () const
void SetMaxDecimalPlaces (int maxDecimalPlaces)
 Sets the maximum number of decimal places for double output.
bool RawValue (const Ch *json, size_t length, Type type)
 Write a raw JSON value.
Implementation of Handler
See Also
Handler
bool Null ()
 Writes the given double value to the stream.
bool Bool (bool b)
 Writes the given double value to the stream.
bool Int (int i)
 Writes the given double value to the stream.
bool Uint (unsigned u)
 Writes the given double value to the stream.
bool Int64 (int64_t i64)
 Writes the given double value to the stream.
bool Uint64 (uint64_t u64)
 Writes the given double value to the stream.
bool Double (double d)
 Writes the given double value to the stream.
bool RawNumber (const Ch *str, SizeType length, bool copy=false)
 Writes the given double value to the stream.
bool String (const Ch *str, SizeType length, bool copy=false)
 Writes the given double value to the stream.
bool StartObject ()
 Writes the given double value to the stream.
bool Key (const Ch *str, SizeType length, bool copy=false)
 Writes the given double value to the stream.
bool EndObject (SizeType memberCount=0)
 Writes the given double value to the stream.
bool StartArray ()
 Writes the given double value to the stream.
bool EndArray (SizeType elementCount=0)
 Writes the given double value to the stream.
Convenience extensions
bool String (const Ch *str)
 Simpler but slower overload.
bool Key (const Ch *str)
 Simpler but slower overload.

Static Public Attributes

static const int kDefaultMaxDecimalPlaces = 324

Protected Member Functions

bool WriteNull ()
bool WriteBool (bool b)
bool WriteInt (int i)
bool WriteUint (unsigned u)
bool WriteInt64 (int64_t i64)
bool WriteUint64 (uint64_t u64)
bool WriteDouble (double d)
bool WriteString (const Ch *str, SizeType length)
bool ScanWriteUnescapedString (GenericStringStream< SourceEncoding > &is, size_t length)
bool WriteStartObject ()
bool WriteEndObject ()
bool WriteStartArray ()
bool WriteEndArray ()
bool WriteRawValue (const Ch *json, size_t length)
void Prefix (Type type)
bool EndValue (bool ret)
template<>
bool WriteInt (int i)
template<>
bool WriteUint (unsigned u)
template<>
bool WriteInt64 (int64_t i64)
template<>
bool WriteUint64 (uint64_t u)
template<>
bool WriteDouble (double d)

Protected Attributes

OutputStream * os_
internal::Stack< StackAllocator > level_stack_
int maxDecimalPlaces_
bool hasRoot_

Static Protected Attributes

static const size_t kDefaultLevelDepth = 32

Private Member Functions

 Writer (const Writer &)
Writeroperator= (const Writer &)

Detailed Description

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
class Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >

JSON writer.

Writer implements the concept Handler. It generates JSON text by events to an output os.

User may programmatically calls the functions of a writer to generate JSON text.

On the other side, a writer can also be passed to objects that generates events,

for example Reader::Parse() and Document::Accept().

Template Parameters
OutputStreamType of output stream.
SourceEncodingEncoding of source string.
TargetEncodingEncoding of output stream.
StackAllocatorType of allocator for allocating memory of stack.
Note
implements Handler concept

Member Typedef Documentation

template<typename OutputStream , typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
typedef SourceEncoding::Ch Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Ch

Constructor & Destructor Documentation

template<typename OutputStream , typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Writer ( OutputStream &  os,
StackAllocator *  stackAllocator = 0,
size_t  levelDepth = kDefaultLevelDepth 
)
inlineexplicit

Constructor.

Parameters
osOutput stream.
stackAllocatorUser supplied allocator. If it is null, it will create a private one.
levelDepthInitial capacity of stack.
template<typename OutputStream , typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Writer ( StackAllocator *  allocator = 0,
size_t  levelDepth = kDefaultLevelDepth 
)
inlineexplicit
template<typename OutputStream , typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Writer ( const Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags > &  )
private

Member Function Documentation

template<typename OutputStream , typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
void Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Reset ( OutputStream &  os)
inline

Reset the writer with a new stream.

This function reset the writer with a new stream and default settings, in order to make a Writer object reusable for output multiple JSONs.

Parameters
osNew output stream.
writer.StartObject();
// ...
writer.EndObject();
writer.Reset(os2);
writer.StartObject();
// ...
writer.EndObject();

References internal::Stack< Allocator >::Clear(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::hasRoot_, Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::level_stack_, and Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::os_.

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::IsComplete ( ) const
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
int Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::GetMaxDecimalPlaces ( ) const
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
void Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::SetMaxDecimalPlaces ( int  maxDecimalPlaces)
inline

Sets the maximum number of decimal places for double output.

This setting truncates the output with specified number of decimal places.

For example,

writer.SetMaxDecimalPlaces(3);
writer.StartArray();
writer.Double(0.12345); // "0.123"
writer.Double(0.0001); // "0.0"
writer.Double(1.234567890123456e30); // "1.234567890123456e30" (do not truncate significand for positive exponent)
writer.Double(1.23e-4); // "0.0" (do truncate significand for negative exponent)
writer.EndArray();

The default setting does not truncate any decimal places. You can restore to this setting by calling

writer.SetMaxDecimalPlaces(Writer::kDefaultMaxDecimalPlaces);

References Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::maxDecimalPlaces_.

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Null ( )
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Bool ( bool  b)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Int ( int  i)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Uint ( unsigned  u)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Int64 ( int64_t  i64)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Uint64 ( uint64_t  u64)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Double ( double  d)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::RawNumber ( const Ch str,
SizeType  length,
bool  copy = false 
)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::String ( const Ch str,
SizeType  length,
bool  copy = false 
)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::StartObject ( )
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Key ( const Ch str,
SizeType  length,
bool  copy = false 
)
inline

Writes the given double value to the stream.

Parameters
dThe value to be written.
Returns
Whether it is succeed.

Reimplemented in PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >.

References Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::String().

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndObject ( SizeType  memberCount = 0)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::StartArray ( )
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndArray ( SizeType  elementCount = 0)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::String ( const Ch str)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Key ( const Ch str)
inline
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::RawValue ( const Ch json,
size_t  length,
Type  type 
)
inline

Write a raw JSON value.

For user to write a stringified JSON as a value.

Parameters
jsonA well-formed JSON value. It should not contain null character within [0, length - 1] range.
lengthLength of the json.
typeType of the root of json.

Reimplemented in PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >.

References Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndValue(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Prefix(), and Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteRawValue().

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteNull ( )
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteBool ( bool  b)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteInt ( int  i)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteUint ( unsigned  u)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteInt64 ( int64_t  i64)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteUint64 ( uint64_t  u64)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteDouble ( double  d)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteString ( const Ch str,
SizeType  length 
)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::ScanWriteUnescapedString ( GenericStringStream< SourceEncoding > &  is,
size_t  length 
)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteStartObject ( )
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteEndObject ( )
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteStartArray ( )
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteEndArray ( )
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteRawValue ( const Ch json,
size_t  length 
)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
void Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Prefix ( Type  type)
inlineprotected

References internal::Stack< Allocator >::GetSize(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::hasRoot_, Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Level::inArray, kStringType, Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::level_stack_, Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::os_, RAPIDJSON_ASSERT, RAPIDJSON_LIKELY, Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Level::valueCount, and void().

Referenced by Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Bool(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Double(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Int(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Int64(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Null(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::RawNumber(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::RawValue(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::StartArray(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::StartObject(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::String(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Uint(), and Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Uint64().

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndValue ( bool  ret)
inlineprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
Writer& Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::operator= ( const Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags > &  )
private
template<>
bool Writer< StringBuffer >::WriteInt ( int  i)
inlineprotected

References internal::i32toa().

template<>
bool Writer< StringBuffer >::WriteUint ( unsigned  u)
inlineprotected

References internal::u32toa().

template<>
bool Writer< StringBuffer >::WriteInt64 ( int64_t  i64)
inlineprotected

References internal::i64toa().

template<>
bool Writer< StringBuffer >::WriteUint64 ( uint64_t  u)
inlineprotected

References internal::u64toa().

template<>
bool Writer< StringBuffer >::WriteDouble ( double  d)
inlineprotected

Member Data Documentation

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
const int Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::kDefaultMaxDecimalPlaces = 324
static
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
const size_t Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::kDefaultLevelDepth = 32
staticprotected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
OutputStream* Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::os_
protected

Referenced by PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndArray(), PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndObject(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::EndValue(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Prefix(), PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::PrettyPrefix(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::Reset(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteBool(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteDouble(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteEndArray(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteEndObject(), PrettyWriter< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteIndent(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteInt(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteInt64(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteNull(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteRawValue(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteStartArray(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteStartObject(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteString(), Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteUint(), and Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::WriteUint64().

template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
internal::Stack<StackAllocator> Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::level_stack_
protected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
int Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::maxDecimalPlaces_
protected
template<typename OutputStream, typename SourceEncoding = UTF8<>, typename TargetEncoding = UTF8<>, typename StackAllocator = CrtAllocator, unsigned writeFlags = kWriteDefaultFlags>
bool Writer< OutputStream, SourceEncoding, TargetEncoding, StackAllocator, writeFlags >::hasRoot_
protected

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


Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)