rippled
Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
ripple::Serializer Class Reference
Collaboration diagram for ripple::Serializer:
Collaboration graph
[legend]

Public Member Functions

 Serializer (int n=256)
 
 Serializer (void const *data, std::size_t size)
 
Slice slice () const noexcept
 
std::size_t size () const noexcept
 
void const * data () const noexcept
 
int add8 (unsigned char i)
 
int add16 (std::uint16_t i)
 
int add32 (std::uint32_t i)
 
int add32 (HashPrefix p)
 
int add64 (std::uint64_t i)
 
template<typename Integer >
int addInteger (Integer)
 
template<std::size_t Bits, class Tag >
int addBitString (base_uint< Bits, Tag > const &v)
 
int addRaw (Blob const &vector)
 
int addRaw (Slice slice)
 
int addRaw (const void *ptr, int len)
 
int addRaw (const Serializer &s)
 
int addVL (Blob const &vector)
 
int addVL (Slice const &slice)
 
template<class Iter >
int addVL (Iter begin, Iter end, int len)
 
int addVL (const void *ptr, int len)
 
bool get8 (int &, int offset) const
 
template<typename Integer >
bool getInteger (Integer &number, int offset)
 
template<std::size_t Bits, typename Tag = void>
bool getBitString (base_uint< Bits, Tag > &data, int offset) const
 
int addFieldID (int type, int name)
 
int addFieldID (SerializedTypeID type, int name)
 
uint256 getSHA512Half () const
 
Blob const & peekData () const
 
Blob getData () const
 
BlobmodData ()
 
int getDataLength () const
 
const void * getDataPtr () const
 
void * getDataPtr ()
 
int getLength () const
 
std::string getString () const
 
void erase ()
 
bool chop (int num)
 
Blob ::iterator begin ()
 
Blob ::iterator end ()
 
Blob ::const_iterator begin () const
 
Blob ::const_iterator end () const
 
void reserve (size_t n)
 
void resize (size_t n)
 
size_t capacity () const
 
bool operator== (Blob const &v) const
 
bool operator!= (Blob const &v) const
 
bool operator== (const Serializer &v) const
 
bool operator!= (const Serializer &v) const
 
template<>
int addInteger (unsigned char i)
 
template<>
int addInteger (std::uint16_t i)
 
template<>
int addInteger (std::uint32_t i)
 
template<>
int addInteger (std::uint64_t i)
 

Static Public Member Functions

static int decodeLengthLength (int b1)
 
static int decodeVLLength (int b1)
 
static int decodeVLLength (int b1, int b2)
 
static int decodeVLLength (int b1, int b2, int b3)
 

Private Member Functions

int addEncoded (int length)
 

Static Private Member Functions

static int encodeLengthLength (int length)
 

Private Attributes

Blob mData
 

Detailed Description

Definition at line 40 of file Serializer.h.

Constructor & Destructor Documentation

◆ Serializer() [1/2]

ripple::Serializer::Serializer ( int  n = 256)
explicit

Definition at line 47 of file Serializer.h.

◆ Serializer() [2/2]

ripple::Serializer::Serializer ( void const *  data,
std::size_t  size 
)

Definition at line 52 of file Serializer.h.

Member Function Documentation

◆ slice()

Slice ripple::Serializer::slice ( ) const
noexcept

Definition at line 64 of file Serializer.h.

◆ size()

std::size_t ripple::Serializer::size ( ) const
noexcept

Definition at line 70 of file Serializer.h.

◆ data()

void const* ripple::Serializer::data ( ) const
noexcept

Definition at line 76 of file Serializer.h.

◆ add8()

int ripple::Serializer::add8 ( unsigned char  i)

Definition at line 166 of file Serializer.cpp.

◆ add16()

int ripple::Serializer::add16 ( std::uint16_t  i)

Definition at line 29 of file Serializer.cpp.

◆ add32() [1/2]

int ripple::Serializer::add32 ( std::uint32_t  i)

Definition at line 38 of file Serializer.cpp.

◆ add32() [2/2]

int ripple::Serializer::add32 ( HashPrefix  p)

Definition at line 49 of file Serializer.cpp.

◆ add64()

int ripple::Serializer::add64 ( std::uint64_t  i)

Definition at line 60 of file Serializer.cpp.

◆ addInteger() [1/5]

template<typename Integer >
int ripple::Serializer::addInteger ( Integer  )

◆ addBitString()

template<std::size_t Bits, class Tag >
int ripple::Serializer::addBitString ( base_uint< Bits, Tag > const &  v)

Definition at line 98 of file Serializer.h.

◆ addRaw() [1/4]

int ripple::Serializer::addRaw ( Blob const &  vector)

Definition at line 100 of file Serializer.cpp.

◆ addRaw() [2/4]

int ripple::Serializer::addRaw ( Slice  slice)

Definition at line 108 of file Serializer.cpp.

◆ addRaw() [3/4]

int ripple::Serializer::addRaw ( const void *  ptr,
int  len 
)

Definition at line 124 of file Serializer.cpp.

◆ addRaw() [4/4]

int ripple::Serializer::addRaw ( const Serializer s)

Definition at line 116 of file Serializer.cpp.

◆ addVL() [1/4]

int ripple::Serializer::addVL ( Blob const &  vector)

Definition at line 200 of file Serializer.cpp.

◆ addVL() [2/4]

int ripple::Serializer::addVL ( Slice const &  slice)

Definition at line 211 of file Serializer.cpp.

◆ addVL() [3/4]

template<class Iter >
int ripple::Serializer::addVL ( Iter  begin,
Iter  end,
int  len 
)

Definition at line 293 of file Serializer.h.

◆ addVL() [4/4]

int ripple::Serializer::addVL ( const void *  ptr,
int  len 
)

Definition at line 220 of file Serializer.cpp.

◆ get8()

bool ripple::Serializer::get8 ( int &  byte,
int  offset 
) const

Definition at line 174 of file Serializer.cpp.

◆ getInteger()

template<typename Integer >
bool ripple::Serializer::getInteger ( Integer &  number,
int  offset 
)

Definition at line 128 of file Serializer.h.

◆ getBitString()

template<std::size_t Bits, typename Tag = void>
bool ripple::Serializer::getBitString ( base_uint< Bits, Tag > &  data,
int  offset 
) const

Definition at line 147 of file Serializer.h.

◆ addFieldID() [1/2]

int ripple::Serializer::addFieldID ( int  type,
int  name 
)

Definition at line 132 of file Serializer.cpp.

◆ addFieldID() [2/2]

int ripple::Serializer::addFieldID ( SerializedTypeID  type,
int  name 
)

Definition at line 158 of file Serializer.h.

◆ getSHA512Half()

uint256 ripple::Serializer::getSHA512Half ( ) const

Definition at line 194 of file Serializer.cpp.

◆ peekData()

Blob const& ripple::Serializer::peekData ( ) const

Definition at line 169 of file Serializer.h.

◆ getData()

Blob ripple::Serializer::getData ( ) const

Definition at line 174 of file Serializer.h.

◆ modData()

Blob& ripple::Serializer::modData ( )

Definition at line 179 of file Serializer.h.

◆ getDataLength()

int ripple::Serializer::getDataLength ( ) const

Definition at line 185 of file Serializer.h.

◆ getDataPtr() [1/2]

const void* ripple::Serializer::getDataPtr ( ) const

Definition at line 190 of file Serializer.h.

◆ getDataPtr() [2/2]

void* ripple::Serializer::getDataPtr ( )

Definition at line 195 of file Serializer.h.

◆ getLength()

int ripple::Serializer::getLength ( ) const

Definition at line 200 of file Serializer.h.

◆ getString()

std::string ripple::Serializer::getString ( ) const

Definition at line 205 of file Serializer.h.

◆ erase()

void ripple::Serializer::erase ( )

Definition at line 210 of file Serializer.h.

◆ chop()

bool ripple::Serializer::chop ( int  num)

Definition at line 184 of file Serializer.cpp.

◆ begin() [1/2]

Blob ::iterator ripple::Serializer::begin ( )

Definition at line 219 of file Serializer.h.

◆ end() [1/2]

Blob ::iterator ripple::Serializer::end ( )

Definition at line 224 of file Serializer.h.

◆ begin() [2/2]

Blob ::const_iterator ripple::Serializer::begin ( ) const

Definition at line 229 of file Serializer.h.

◆ end() [2/2]

Blob ::const_iterator ripple::Serializer::end ( ) const

Definition at line 234 of file Serializer.h.

◆ reserve()

void ripple::Serializer::reserve ( size_t  n)

Definition at line 239 of file Serializer.h.

◆ resize()

void ripple::Serializer::resize ( size_t  n)

Definition at line 244 of file Serializer.h.

◆ capacity()

size_t ripple::Serializer::capacity ( ) const

Definition at line 249 of file Serializer.h.

◆ operator==() [1/2]

bool ripple::Serializer::operator== ( Blob const &  v) const

Definition at line 255 of file Serializer.h.

◆ operator!=() [1/2]

bool ripple::Serializer::operator!= ( Blob const &  v) const

Definition at line 260 of file Serializer.h.

◆ operator==() [2/2]

bool ripple::Serializer::operator== ( const Serializer v) const

Definition at line 265 of file Serializer.h.

◆ operator!=() [2/2]

bool ripple::Serializer::operator!= ( const Serializer v) const

Definition at line 270 of file Serializer.h.

◆ decodeLengthLength()

int ripple::Serializer::decodeLengthLength ( int  b1)
static

Definition at line 282 of file Serializer.cpp.

◆ decodeVLLength() [1/3]

int ripple::Serializer::decodeVLLength ( int  b1)
static

Definition at line 301 of file Serializer.cpp.

◆ decodeVLLength() [2/3]

int ripple::Serializer::decodeVLLength ( int  b1,
int  b2 
)
static

Definition at line 313 of file Serializer.cpp.

◆ decodeVLLength() [3/3]

int ripple::Serializer::decodeVLLength ( int  b1,
int  b2,
int  b3 
)
static

Definition at line 325 of file Serializer.cpp.

◆ encodeLengthLength()

int ripple::Serializer::encodeLengthLength ( int  length)
staticprivate

Definition at line 263 of file Serializer.cpp.

◆ addEncoded()

int ripple::Serializer::addEncoded ( int  length)
private

Definition at line 231 of file Serializer.cpp.

◆ addInteger() [2/5]

template<>
int ripple::Serializer::addInteger ( unsigned char  i)

Definition at line 76 of file Serializer.cpp.

◆ addInteger() [3/5]

template<>
int ripple::Serializer::addInteger ( std::uint16_t  i)

Definition at line 82 of file Serializer.cpp.

◆ addInteger() [4/5]

template<>
int ripple::Serializer::addInteger ( std::uint32_t  i)

Definition at line 88 of file Serializer.cpp.

◆ addInteger() [5/5]

template<>
int ripple::Serializer::addInteger ( std::uint64_t  i)

Definition at line 94 of file Serializer.cpp.

Member Data Documentation

◆ mData

Blob ripple::Serializer::mData
private

Definition at line 44 of file Serializer.h.