Monero
Loading...
Searching...
No Matches
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

namespace  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>
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 ,
adl_free_function  )

◆ TEST() [2/14]

TEST ( Serialization ,
BinaryArchiveInts  )

◆ TEST() [3/14]

TEST ( Serialization ,
BinaryArchiveVarInts  )

◆ TEST() [4/14]

TEST ( Serialization ,
difficulty_type  )

◆ TEST() [5/14]

TEST ( Serialization ,
Overflow  )

◆ TEST() [6/14]

TEST ( Serialization ,
portability_outputs  )

◆ TEST() [7/14]

TEST ( Serialization ,
portability_signed_tx  )

◆ TEST() [8/14]

TEST ( Serialization ,
portability_unsigned_tx  )

◆ TEST() [9/14]

TEST ( Serialization ,
portability_wallet  )

◆ TEST() [10/14]

TEST ( Serialization ,
serializes_ringct_types  )

◆ TEST() [11/14]

TEST ( Serialization ,
serializes_transacion_signatures_correctly  )

◆ TEST() [12/14]

TEST ( Serialization ,
serializes_vector_int64_as_fixed_int  )

◆ TEST() [13/14]

TEST ( Serialization ,
serializes_vector_uint64_as_varint  )

◆ TEST() [14/14]

TEST ( Serialization ,
Test1  )

◆ try_parse()

bool try_parse ( const string & blob)

◆ VARIANT_TAG() [1/7]

VARIANT_TAG ( binary_archive ,
int ,
0xe1  )

◆ VARIANT_TAG() [2/7]

VARIANT_TAG ( binary_archive ,
Struct ,
0xe0  )

◆ VARIANT_TAG() [3/7]

VARIANT_TAG ( debug_archive ,
int ,
"int"  )

◆ VARIANT_TAG() [4/7]

VARIANT_TAG ( debug_archive ,
Struct ,
"struct"  )

◆ VARIANT_TAG() [5/7]

VARIANT_TAG ( debug_archive ,
Struct1 ,
"struct1"  )

◆ VARIANT_TAG() [6/7]

VARIANT_TAG ( json_archive ,
int ,
"int"  )

◆ VARIANT_TAG() [7/7]

VARIANT_TAG ( json_archive ,
Struct ,
"struct"  )