LMDBAL 0.6.0
LMDB (Lightning Memory-Mapped Database Manager) Abstraction Layer
Loading...
Searching...
No Matches
LMDBAL::Serializer< T > Class Template Reference

A class handling serialization/deserialization. More...

#include <serializer.hpp>

Public Member Functions

 Serializer ()
 Creates an empty Serializer.
 
 Serializer (const T &value)
 Creates a Serializer with some data in it.
 
 ~Serializer ()
 Destoys the serializer.
 
deserialize (const MDB_val &value)
 Deserializes value.
 
void deserialize (const MDB_val &value, T &result)
 Deserializes value.
 
MDB_val setData (const T &value)
 Sets the data to the seriazer.
 
MDB_val getData ()
 Returns the data if it already was serialized.
 
void clear ()
 Clears the state of serializer.
 

Detailed Description

template<class T>
class LMDBAL::Serializer< T >

A class handling serialization/deserialization.

A class that is constructed in every LMDBAL::Storage to serialize or deserialize keys and values.

It serializes to and deserializes from MDB_val

Template Parameters
Ktype of the keys of the storage
Vtype of the values of the storage

Constructor & Destructor Documentation

◆ Serializer()

template<class T >
LMDBAL::Serializer< T >::Serializer ( const T & value)

Creates a Serializer with some data in it.

The data automatically gets serialized

Parameters
[in]value- a value that is assigned to the serializer

Member Function Documentation

◆ clear()

template<class T >
void LMDBAL::Serializer< T >::clear ( )

Clears the state of serializer.

Normally you don't need to call this function

◆ deserialize() [1/2]

template<class T >
T LMDBAL::Serializer< T >::deserialize ( const MDB_val & value)

Deserializes value.

This is a normal way to deseriaze value

Parameters
[in]value- a value you want to deserialize
Returns
deserialized value

◆ deserialize() [2/2]

template<class T >
void LMDBAL::Serializer< T >::deserialize ( const MDB_val & value,
T & result )

Deserializes value.

This is a normal way to deseriaze value

Parameters
[in]value- a value you want to deserialize
[out]result- deserialized value

◆ getData()

template<class T >
MDB_val LMDBAL::Serializer< T >::getData ( )

Returns the data if it already was serialized.

Normally you don't need to call this function

This may be usefull if you called LMDBAL::Serilizer::setData() but lost the result

Returns
Serialized data

◆ setData()

template<class T >
MDB_val LMDBAL::Serializer< T >::setData ( const T & value)

Sets the data to the seriazer.

This is a normal way to seriaze value

Parameters
[in]value- a value you want to serialize
Returns
serialized value

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