join 1.0
lightweight network framework library
Loading...
Searching...
No Matches
join::JsonCanonicalizer Class Reference

JSON canonicalizer class. More...

#include <json.hpp>

Inheritance diagram for join::JsonCanonicalizer:
Collaboration diagram for join::JsonCanonicalizer:

Public Member Functions

 JsonCanonicalizer (std::ostream &document)
 create instance.
 
 JsonCanonicalizer (const JsonCanonicalizer &other)=delete
 copy constructor.
 
JsonCanonicalizeroperator= (const JsonCanonicalizer &other)=delete
 copy assignment.
 
 JsonCanonicalizer (JsonCanonicalizer &&other)=delete
 move constructor.
 
JsonCanonicalizeroperator= (JsonCanonicalizer &&other)=delete
 move assignment.
 
virtual ~JsonCanonicalizer ()=default
 destroy instance.
 
virtual int setDouble (double value) override
 set real value.
 
- Public Member Functions inherited from join::JsonWriter
 JsonWriter (std::ostream &document, size_t indentation=0)
 create instance.
 
 JsonWriter (const JsonWriter &other)=delete
 copy constructor.
 
JsonWriteroperator= (const JsonWriter &other)=delete
 copy assignment.
 
 JsonWriter (JsonWriter &&other)=delete
 move constructor.
 
JsonWriteroperator= (JsonWriter &&other)=delete
 move assignment.
 
virtual ~JsonWriter ()=default
 destroy instance.
 
virtual int setNull () override
 set null value.
 
virtual int setBool (bool value) override
 set boolean value.
 
virtual int setInt (int32_t value) override
 set integer value.
 
virtual int setUint (uint32_t value) override
 set unsigned integer value.
 
virtual int setInt64 (int64_t value) override
 set 64 bits integer value.
 
virtual int setUint64 (uint64_t value) override
 set unsigned 64 bits integer value.
 
virtual int setString (const std::string &value) override
 set string value.
 
virtual int startArray (uint32_t size=0) override
 start array.
 
virtual int stopArray () override
 stop array.
 
virtual int startObject (uint32_t size=0) override
 start object.
 
virtual int setKey (const std::string &key) override
 set key.
 
virtual int stopObject () override
 stop object.
 
- Public Member Functions inherited from join::StreamWriter
 StreamWriter (std::ostream &document)
 create instance.
 
 StreamWriter (const StreamWriter &other)=delete
 Create the Writer instance by copy.
 
StreamWriteroperator= (const StreamWriter &other)=delete
 Assign the Writer instance by copy.
 
 StreamWriter (StreamWriter &&other)=delete
 Create the Writer instance by move.
 
StreamWriteroperator= (StreamWriter &&other)=delete
 Assign the Writer instance by move.
 
virtual ~StreamWriter ()=default
 Destroy the Writer instance.
 
virtual int serialize (const Value &value)
 Serialize data.
 
- Public Member Functions inherited from join::SaxHandler
 SaxHandler ()=default
 default constructor.
 
 SaxHandler (const SaxHandler &other)=default
 copy constructor.
 
SaxHandleroperator= (const SaxHandler &other)=default
 copy assignment.
 
 SaxHandler (SaxHandler &&other)=default
 move constructor.
 
SaxHandleroperator= (SaxHandler &&other)=default
 move assignment.
 
virtual ~SaxHandler ()=default
 destroy instance.
 

Protected Member Functions

virtual int setObject (const Object &object) override
 set object value.
 
virtual void writeDouble (double value) noexcept override
 write real value.
 
- Protected Member Functions inherited from join::JsonWriter
virtual void writeInt (int32_t value)
 write integer value.
 
virtual void writeUint (uint32_t value)
 write unsigned integer value.
 
virtual void writeInt64 (int64_t value)
 write 64 bits integer value.
 
virtual void writeUint64 (uint64_t value)
 write 64 bits unsigned integer value.
 
virtual int utf8Codepoint (std::string::const_iterator &cur, std::string::const_iterator &end, uint32_t &codepoint)
 get UTF8 codepoint.
 
virtual int writeEscaped (const std::string &value)
 escape string value.
 
void comma () noexcept
 write comma.
 
void indent () noexcept
 write indentation.
 
void space () noexcept
 write space.
 
void endLine () noexcept
 write end of line.
 
void array () noexcept
 add comma, go to line and indent if in array.
 
- Protected Member Functions inherited from join::StreamWriter
int setValue (const Value &value)
 set value.
 
virtual int setArray (const Array &array)
 set array value.
 
void append (char data) noexcept
 append character to output stream in batch.
 
void append2 (const char *data) noexcept
 append 2-character literal to output stream in batch.
 
void append3 (const char *data) noexcept
 append 3-character literal to output stream in batch.
 
void append4 (const char *data) noexcept
 append 4-character literal to output stream in batch.
 
void append5 (const char *data) noexcept
 append 5-character literal to output stream in batch.
 
void append (const char *data, uint32_t size) noexcept
 append characters to output stream in batch.
 

Additional Inherited Members

- Protected Attributes inherited from join::JsonWriter
std::stack< bool > _stack
 array stack.
 
size_t _indentation
 indentation.
 
std::string _tab
 tabulation.
 
bool _first = true
 is first element.
 
- Protected Attributes inherited from join::StreamWriter
std::streambuf * _out
 underlying output stream.
 

Detailed Description

JSON canonicalizer class.

Constructor & Destructor Documentation

◆ JsonCanonicalizer() [1/3]

join::JsonCanonicalizer::JsonCanonicalizer ( std::ostream & document)
inline

create instance.

Parameters
documentJSON document to create.

◆ JsonCanonicalizer() [2/3]

join::JsonCanonicalizer::JsonCanonicalizer ( const JsonCanonicalizer & other)
delete

copy constructor.

Parameters
otherobject to copy.

◆ JsonCanonicalizer() [3/3]

join::JsonCanonicalizer::JsonCanonicalizer ( JsonCanonicalizer && other)
delete

move constructor.

Parameters
otherobject to move.

◆ ~JsonCanonicalizer()

virtual join::JsonCanonicalizer::~JsonCanonicalizer ( )
virtualdefault

destroy instance.

Member Function Documentation

◆ operator=() [1/2]

JsonCanonicalizer & join::JsonCanonicalizer::operator= ( const JsonCanonicalizer & other)
delete

copy assignment.

Parameters
otherobject to copy.
Returns
a reference of the current object.

◆ operator=() [2/2]

JsonCanonicalizer & join::JsonCanonicalizer::operator= ( JsonCanonicalizer && other)
delete

move assignment.

Parameters
otherobject to move.
Returns
a reference of the current object.

◆ setDouble()

virtual int join::JsonCanonicalizer::setDouble ( double value)
inlineoverridevirtual

set real value.

Parameters
valuereal value to set.
Returns
0 on success, -1 otherwise.

Reimplemented from join::JsonWriter.

◆ setObject()

virtual int join::JsonCanonicalizer::setObject ( const Object & object)
inlineoverrideprotectedvirtual

set object value.

Parameters
valuearray value to set.
Returns
0 on success, -1 otherwise.

Reimplemented from join::StreamWriter.

◆ writeDouble()

virtual void join::JsonCanonicalizer::writeDouble ( double value)
inlineoverrideprotectedvirtualnoexcept

write real value.

Parameters
valuereal value to write.

Reimplemented from join::JsonWriter.


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