ledger-core
Public Member Functions | List of all members
ledger::core::BytesWriter Class Reference

#include <BytesWriter.h>

Public Member Functions

 BytesWriter (size_t size)
 
BytesWriterwriteByte (uint8_t byte)
 
template<typename T >
BytesWriterwriteBeValue (const T value)
 
template<typename T >
BytesWriterwriteLeValue (const T value)
 
BytesWriterwriteByteArray (const std::vector< uint8_t > &data)
 
BytesWriterwriteLeByteArray (const std::vector< uint8_t > &data)
 
BytesWriterwriteBeBigInt (const BigInt &i)
 
BytesWriterwriteLeBigInt (const BigInt &i)
 
BytesWriterwriteString (const std::string &str)
 
BytesWriterwriteVarInt (uint64_t i)
 
BytesWriterwriteVarString (const std::string &str)
 
std::vector< uint8_t > toByteArray () const
 

Detailed Description

Helper class to write byte array. Each write call returns a reference on "this" in order to chain writings.

Member Function Documentation

◆ toByteArray()

std::vector< uint8_t > ledger::core::BytesWriter::toByteArray ( ) const

Returns the serialized data.

Returns

◆ writeBeBigInt()

BytesWriter & ledger::core::BytesWriter::writeBeBigInt ( const BigInt i)

Write a BigInt into the writer using big endian bytes ordering.

Parameters
i
Returns

◆ writeBeValue()

template<typename T >
BytesWriter& ledger::core::BytesWriter::writeBeValue ( const T  value)
inline

Write a value (int, long, short, byte, struct) into the writer using big endian bytes ordering.

Parameters
value
Returns

◆ writeByte()

BytesWriter& ledger::core::BytesWriter::writeByte ( uint8_t  byte)
inline

Write a single byte into the writer.

Parameters
byte
Returns

◆ writeByteArray()

BytesWriter & ledger::core::BytesWriter::writeByteArray ( const std::vector< uint8_t > &  data)

Writes a byte array into the writer.

Parameters
data
Returns

◆ writeLeBigInt()

BytesWriter & ledger::core::BytesWriter::writeLeBigInt ( const BigInt i)

Write a BigInt into the writer using big endian bytes ordering.

Parameters
i
Returns

◆ writeLeByteArray()

BytesWriter & ledger::core::BytesWriter::writeLeByteArray ( const std::vector< uint8_t > &  data)

Write a byte array in reverse order.

Parameters
data
Returns

◆ writeLeValue()

template<typename T >
BytesWriter& ledger::core::BytesWriter::writeLeValue ( const T  value)
inline

Write a value (int, long, short, byte, struct) into the writer using big endian bytes ordering.

Parameters
value
Returns

◆ writeString()

BytesWriter & ledger::core::BytesWriter::writeString ( const std::string &  str)

Writes a string into the writer.

Parameters
str
Returns

◆ writeVarInt()

BytesWriter & ledger::core::BytesWriter::writeVarInt ( uint64_t  i)

Writes a var int into the writer.

Parameters
i
Returns

◆ writeVarString()

BytesWriter & ledger::core::BytesWriter::writeVarString ( const std::string &  str)

Writes a var string into the writer.

Parameters
str
Returns

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