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

message pack writer class. More...

#include <pack.hpp>

Inheritance diagram for join::PackWriter:
Collaboration diagram for join::PackWriter:

Public Member Functions

 PackWriter (std::ostream &document)
 create instance.
 
 PackWriter (const PackWriter &other)=delete
 copy constructor.
 
PackWriteroperator= (const PackWriter &other)=delete
 copy assignment.
 
 PackWriter (PackWriter &&other)=delete
 move constructor.
 
PackWriteroperator= (PackWriter &&other)=delete
 move assignment.
 
virtual ~PackWriter ()=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 setDouble (double value) override
 set real value.
 
virtual int setString (const std::string &value) override
 set string value.
 
virtual int startArray (uint32_t size=0) override
 start array.
 
virtual int startObject (uint32_t size=0) override
 start object.
 
virtual int setKey (const std::string &key) override
 set key.
 
- 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.
 
virtual int stopArray ()
 stop array.
 
virtual int stopObject ()
 stop object.
 

Protected Member Functions

template<typename Type >
void pack (Type value)
 pack value into stream.
 
- Protected Member Functions inherited from join::StreamWriter
int setValue (const Value &value)
 set value.
 
virtual int setArray (const Array &array)
 set array value.
 
virtual int setObject (const Object &object)
 set object 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::StreamWriter
std::streambuf * _out
 underlying output stream.
 

Detailed Description

message pack writer class.

Constructor & Destructor Documentation

◆ PackWriter() [1/3]

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

create instance.

Parameters
documentMessagePack document to create.

◆ PackWriter() [2/3]

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

copy constructor.

Parameters
otherobject to copy.

◆ PackWriter() [3/3]

join::PackWriter::PackWriter ( PackWriter && other)
delete

move constructor.

Parameters
otherobject to move.

◆ ~PackWriter()

virtual join::PackWriter::~PackWriter ( )
virtualdefault

destroy instance.

Member Function Documentation

◆ operator=() [1/2]

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

copy assignment.

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

◆ operator=() [2/2]

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

move assignment.

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

◆ pack()

template<typename Type >
void join::PackWriter::pack ( Type value)
inlineprotected

pack value into stream.

Parameters
valuevalue to pack.

◆ setBool()

virtual int join::PackWriter::setBool ( bool value)
inlineoverridevirtual

set boolean value.

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

Implements join::SaxHandler.

◆ setDouble()

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

set real value.

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

Implements join::SaxHandler.

◆ setInt()

virtual int join::PackWriter::setInt ( int32_t value)
inlineoverridevirtual

set integer value.

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

Implements join::SaxHandler.

◆ setInt64()

virtual int join::PackWriter::setInt64 ( int64_t value)
inlineoverridevirtual

set 64 bits integer value.

Parameters
value64 bits integer value to set.
Returns
0 on success, -1 otherwise.

Implements join::SaxHandler.

◆ setKey()

virtual int join::PackWriter::setKey ( const std::string & key)
inlineoverridevirtual

set key.

Parameters
keyobject key.
Returns
0 on success, -1 otherwise.

Implements join::SaxHandler.

◆ setNull()

virtual int join::PackWriter::setNull ( )
inlineoverridevirtual

set null value.

Returns
0 on success, -1 otherwise.

Implements join::SaxHandler.

◆ setString()

virtual int join::PackWriter::setString ( const std::string & value)
inlineoverridevirtual

set string value.

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

Implements join::SaxHandler.

◆ setUint()

virtual int join::PackWriter::setUint ( uint32_t value)
inlineoverridevirtual

set unsigned integer value.

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

Implements join::SaxHandler.

◆ setUint64()

virtual int join::PackWriter::setUint64 ( uint64_t value)
inlineoverridevirtual

set unsigned 64 bits integer value.

Parameters
valueunsigned 64 bits integer value to set.
Returns
0 on success, -1 otherwise.

Implements join::SaxHandler.

◆ startArray()

virtual int join::PackWriter::startArray ( uint32_t size = 0)
inlineoverridevirtual

start array.

Parameters
sizearray size.
Returns
0 on success, -1 otherwise.

Implements join::SaxHandler.

◆ startObject()

virtual int join::PackWriter::startObject ( uint32_t size = 0)
inlineoverridevirtual

start object.

Parameters
sizearray size.
Returns
0 on success, -1 otherwise.

Implements join::SaxHandler.


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