mirror of
https://github.com/monero-project/monero.git
synced 2024-10-01 11:49:47 -04:00
29 lines
785 B
C
29 lines
785 B
C
|
// Copyright (c) 2012-2013 The Cryptonote developers
|
||
|
// Distributed under the MIT/X11 software license, see the accompanying
|
||
|
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "json_archive.h"
|
||
|
#include "variant.h"
|
||
|
|
||
|
template <bool W>
|
||
|
struct debug_archive : public json_archive<W> {
|
||
|
typedef typename json_archive<W>::stream_type stream_type;
|
||
|
|
||
|
debug_archive(stream_type &s) : json_archive<W>(s) { }
|
||
|
};
|
||
|
|
||
|
template <class T>
|
||
|
struct serializer<debug_archive<true>, T>
|
||
|
{
|
||
|
static void serialize(debug_archive<true> &ar, T &v)
|
||
|
{
|
||
|
ar.begin_object();
|
||
|
ar.tag(variant_serialization_traits<debug_archive<true>, T>::get_tag());
|
||
|
serializer<json_archive<true>, T>::serialize(ar, v);
|
||
|
ar.end_object();
|
||
|
ar.stream() << std::endl;
|
||
|
}
|
||
|
};
|