Monero
Loading...
Searching...
No Matches
JsonReader Class Reference

Represents a JSON reader which implements Archiver concept. More...

#include <archiver.h>

Public Member Functions

 JsonReader (const char *json)
 Constructor.
 ~JsonReader ()
 Destructor.
 operator bool () const
JsonReaderStartObject ()
JsonReaderMember (const char *name)
bool HasMember (const char *name) const
JsonReaderEndObject ()
JsonReaderStartArray (size_t *size=0)
JsonReaderEndArray ()
JsonReaderoperator& (bool &b)
JsonReaderoperator& (unsigned &u)
JsonReaderoperator& (int &i)
JsonReaderoperator& (double &d)
JsonReaderoperator& (std::string &s)
JsonReaderSetNull ()

Static Public Attributes

static const bool IsReader = true
static const bool IsWriter = !IsReader

Private Member Functions

 JsonReader (const JsonReader &)
JsonReaderoperator= (const JsonReader &)
void Next ()

Private Attributes

void * mDocument
 DOM result of parsing.
void * mStack
 Stack for iterating the DOM.
bool mError
 Whether an error has occurred.

Detailed Description

Represents a JSON reader which implements Archiver concept.

Constructor & Destructor Documentation

◆ JsonReader() [1/2]

JsonReader::JsonReader ( const char * json)

Constructor.

Parameters
jsonA non-const source json string for in-situ parsing.
Note
in-situ means the source JSON string will be modified after parsing.

◆ ~JsonReader()

JsonReader::~JsonReader ( )

Destructor.

◆ JsonReader() [2/2]

JsonReader::JsonReader ( const JsonReader & )
private

Member Function Documentation

◆ EndArray()

JsonReader & JsonReader::EndArray ( )

◆ EndObject()

JsonReader & JsonReader::EndObject ( )

◆ HasMember()

bool JsonReader::HasMember ( const char * name) const

◆ Member()

JsonReader & JsonReader::Member ( const char * name)

◆ Next()

void JsonReader::Next ( )
private

◆ operator bool()

JsonReader::operator bool ( ) const
inline

◆ operator&() [1/5]

JsonReader & JsonReader::operator& ( bool & b)

◆ operator&() [2/5]

JsonReader & JsonReader::operator& ( double & d)

◆ operator&() [3/5]

JsonReader & JsonReader::operator& ( int & i)

◆ operator&() [4/5]

JsonReader & JsonReader::operator& ( std::string & s)

◆ operator&() [5/5]

JsonReader & JsonReader::operator& ( unsigned & u)

◆ operator=()

JsonReader & JsonReader::operator= ( const JsonReader & )
private

◆ SetNull()

JsonReader & JsonReader::SetNull ( )

◆ StartArray()

JsonReader & JsonReader::StartArray ( size_t * size = 0)

◆ StartObject()

JsonReader & JsonReader::StartObject ( )

Member Data Documentation

◆ IsReader

const bool JsonReader::IsReader = true
static

◆ IsWriter

const bool JsonReader::IsWriter = !IsReader
static

◆ mDocument

void* JsonReader::mDocument
private

DOM result of parsing.

◆ mError

bool JsonReader::mError
private

Whether an error has occurred.

◆ mStack

void* JsonReader::mStack
private

Stack for iterating the DOM.


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