Monero
Classes | Namespaces | Macros | Functions
serialization.cpp File Reference
#include <cstring>
#include <cstdint>
#include <cstdio>
#include <iostream>
#include <vector>
#include <boost/foreach.hpp>
#include <boost/archive/portable_binary_iarchive.hpp>
#include "cryptonote_basic/cryptonote_basic.h"
#include "cryptonote_basic/cryptonote_basic_impl.h"
#include "ringct/rctSigs.h"
#include "serialization/binary_archive.h"
#include "serialization/json_archive.h"
#include "serialization/debug_archive.h"
#include "serialization/variant.h"
#include "serialization/containers.h"
#include "serialization/binary_utils.h"
#include "wallet/wallet2.h"
#include "gtest/gtest.h"
#include "unit_tests_utils.h"
#include "device/device.hpp"
Include dependency graph for serialization.cpp:

Classes

struct  Struct
 
struct  Struct1
 
struct  Blob
 
struct  example_namespace::ADLExampleStruct
 
struct  unsigned_tx_set
 

Namespaces

 example_namespace
 

Macros

#define OUTPUT_EXPORT_FILE_MAGIC   "Monero output export\003"
 
#define UNSIGNED_TX_PREFIX   "Monero unsigned tx set\003"
 
#define SIGNED_TX_PREFIX   "Monero signed tx set\003"
 

Functions

template<class Archive >
static bool do_serialize (Archive &ar, Struct &s)
 
 VARIANT_TAG (binary_archive, Struct, 0xe0)
 
 VARIANT_TAG (binary_archive, int, 0xe1)
 
 VARIANT_TAG (json_archive, Struct, "struct")
 
 VARIANT_TAG (json_archive, int, "int")
 
 VARIANT_TAG (debug_archive, Struct1, "struct1")
 
 VARIANT_TAG (debug_archive, Struct, "struct")
 
 VARIANT_TAG (debug_archive, int, "int")
 
 BLOB_SERIALIZER (Blob)
 
bool try_parse (const string &blob)
 
template<class Archive >
static bool example_namespace::do_serialize (Archive &ar, ADLExampleStruct &aes)
 
 TEST (Serialization, BinaryArchiveInts)
 
 TEST (Serialization, BinaryArchiveVarInts)
 
 TEST (Serialization, Test1)
 
 TEST (Serialization, Overflow)
 
 TEST (Serialization, serializes_vector_uint64_as_varint)
 
 TEST (Serialization, serializes_vector_int64_as_fixed_int)
 
 TEST (Serialization, serializes_transacion_signatures_correctly)
 
 TEST (Serialization, serializes_ringct_types)
 
 TEST (Serialization, portability_wallet)
 
 TEST (Serialization, portability_outputs)
 
template<class Archive >
void serialize (Archive &a, unsigned_tx_set &x, const boost::serialization::version_type ver)
 
 TEST (Serialization, portability_unsigned_tx)
 
 TEST (Serialization, portability_signed_tx)
 
 TEST (Serialization, difficulty_type)
 
 TEST (Serialization, adl_free_function)
 

Macro Definition Documentation

◆ OUTPUT_EXPORT_FILE_MAGIC

#define OUTPUT_EXPORT_FILE_MAGIC   "Monero output export\003"

◆ SIGNED_TX_PREFIX

#define SIGNED_TX_PREFIX   "Monero signed tx set\003"

◆ UNSIGNED_TX_PREFIX

#define UNSIGNED_TX_PREFIX   "Monero unsigned tx set\003"

Function Documentation

◆ BLOB_SERIALIZER()

BLOB_SERIALIZER ( Blob  )

◆ do_serialize()

template<class Archive >
static bool do_serialize ( Archive &  ar,
Struct s 
)
static

◆ serialize()

template<class Archive >
void serialize ( Archive &  a,
unsigned_tx_set x,
const boost::serialization::version_type  ver 
)
inline

◆ TEST() [1/14]

TEST ( Serialization  ,
BinaryArchiveInts   
)

◆ TEST() [2/14]

TEST ( Serialization  ,
BinaryArchiveVarInts   
)

◆ TEST() [3/14]

TEST ( Serialization  ,
Test1   
)

◆ TEST() [4/14]

TEST ( Serialization  ,
Overflow   
)

◆ TEST() [5/14]

TEST ( Serialization  ,
serializes_vector_uint64_as_varint   
)

◆ TEST() [6/14]

TEST ( Serialization  ,
serializes_vector_int64_as_fixed_int   
)

◆ TEST() [7/14]

TEST ( Serialization  ,
serializes_transacion_signatures_correctly   
)

◆ TEST() [8/14]

TEST ( Serialization  ,
serializes_ringct_types   
)

◆ TEST() [9/14]

TEST ( Serialization  ,
portability_wallet   
)

◆ TEST() [10/14]

TEST ( Serialization  ,
portability_outputs   
)

◆ TEST() [11/14]

TEST ( Serialization  ,
portability_unsigned_tx   
)

◆ TEST() [12/14]

TEST ( Serialization  ,
portability_signed_tx   
)

◆ TEST() [13/14]

TEST ( Serialization  ,
difficulty_type   
)

◆ TEST() [14/14]

TEST ( Serialization  ,
adl_free_function   
)

◆ try_parse()

bool try_parse ( const string &  blob)

◆ VARIANT_TAG() [1/7]

VARIANT_TAG ( binary_archive  ,
Struct  ,
0xe0   
)

◆ VARIANT_TAG() [2/7]

VARIANT_TAG ( binary_archive  ,
int  ,
0xe1   
)

◆ VARIANT_TAG() [3/7]

VARIANT_TAG ( json_archive  ,
Struct  ,
"struct"   
)

◆ VARIANT_TAG() [4/7]

VARIANT_TAG ( json_archive  ,
int  ,
"int"   
)

◆ VARIANT_TAG() [5/7]

VARIANT_TAG ( debug_archive  ,
Struct1  ,
"struct1"   
)

◆ VARIANT_TAG() [6/7]

VARIANT_TAG ( debug_archive  ,
Struct  ,
"struct"   
)

◆ VARIANT_TAG() [7/7]

VARIANT_TAG ( debug_archive  ,
int  ,
"int"   
)