35 #define TX_EXTRA_PADDING_MAX_COUNT 255 36 #define TX_EXTRA_NONCE_MAX_COUNT 255 38 #define TX_EXTRA_TAG_PADDING 0x00 39 #define TX_EXTRA_TAG_PUBKEY 0x01 40 #define TX_EXTRA_NONCE 0x02 41 #define TX_EXTRA_MERGE_MINING_TAG 0x03 42 #define TX_EXTRA_TAG_ADDITIONAL_PUBKEYS 0x04 43 #define TX_EXTRA_TAG_BRIDGE_SOURCE_ADDRESS 0x05 44 #define TX_EXTRA_TAG_BRIDGE_SMARTCHAIN_ADDRESS 0x06 45 #define TX_EXTRA_MYSTERIOUS_MINERGATE_TAG 0xDE 47 #define TX_EXTRA_NONCE_PAYMENT_ID 0x00 48 #define TX_EXTRA_NONCE_ENCRYPTED_PAYMENT_ID 0x01 57 template <
template <
bool>
class Archive>
63 std::ios_base::iostate
state = ar.stream().rdstate();
64 bool eof = EOF == ar.stream().peek();
65 ar.stream().clear(
state);
82 template <
template <
bool>
class Archive>
89 for (
size_t i = 1; i <
size; ++i)
130 FIELD_N("merkle_root", mm_tag.merkle_root)
138 template <template <
bool> class Archive>
145 std::istringstream iss(field);
152 template <
template <
bool>
class Archive>
155 std::ostringstream oss;
169 std::vector<crypto::public_key>
data;
#define VARINT_FIELD_N(t, f)
tags (as t) and serializes the varint f
boost::variant< tx_extra_padding, tx_extra_pub_key, tx_extra_nonce, tx_extra_merge_mining_tag, tx_extra_additional_pub_keys, tx_extra_bridge_source_address, tx_extra_bridge_smartchain_address, tx_extra_mysterious_minergate > tx_extra_field
#define END_SERIALIZE()
self-explanatory
Holds cryptonote related classes and helpers.
void serialize(Archive &a, unsigned_tx_set &x, const boost::serialization::version_type ver)
void do_serialize(boost::mpl::false_, Archive &a, epee::net_utils::network_address &na)
#define BEGIN_SERIALIZE()
Begins the environment of the DSL for describing how to serialize an of an archive type...
#define FIELD(f)
tags the field with the variable name and then serializes it
#define FIELD_N(t, f)
serializes a field f tagged t