From ec6927e66ea6398e4c787bd1d36c10d7867f8256 Mon Sep 17 00:00:00 2001 From: Luke Parker Date: Sat, 21 May 2022 21:36:28 -0400 Subject: [PATCH] Add Clone/Debug derivations to structs --- coins/monero/src/block.rs | 2 ++ coins/monero/src/bulletproofs.rs | 1 + coins/monero/src/transaction.rs | 7 +++++++ 3 files changed, 10 insertions(+) diff --git a/coins/monero/src/block.rs b/coins/monero/src/block.rs index 328e9c7f..ac433801 100644 --- a/coins/monero/src/block.rs +++ b/coins/monero/src/block.rs @@ -3,6 +3,7 @@ use crate::{ transaction::Transaction }; +#[derive(Clone, Debug)] pub struct BlockHeader { pub major_version: u64, pub minor_version: u64, @@ -33,6 +34,7 @@ impl BlockHeader { } } +#[derive(Clone, Debug)] pub struct Block { pub header: BlockHeader, pub miner_tx: Transaction, diff --git a/coins/monero/src/bulletproofs.rs b/coins/monero/src/bulletproofs.rs index e8e84bd3..caf96534 100644 --- a/coins/monero/src/bulletproofs.rs +++ b/coins/monero/src/bulletproofs.rs @@ -4,6 +4,7 @@ use curve25519_dalek::{scalar::Scalar, edwards::EdwardsPoint}; use crate::{Commitment, wallet::TransactionError, serialize::*}; +#[derive(Clone, Debug)] pub struct Bulletproofs { pub A: EdwardsPoint, pub S: EdwardsPoint, diff --git a/coins/monero/src/transaction.rs b/coins/monero/src/transaction.rs index 4d10ce2c..9decc833 100644 --- a/coins/monero/src/transaction.rs +++ b/coins/monero/src/transaction.rs @@ -6,6 +6,7 @@ use crate::{ bulletproofs::Bulletproofs, clsag::Clsag, }; +#[derive(Clone, Debug)] pub enum Input { Gen(u64), @@ -51,6 +52,7 @@ impl Input { } // Doesn't bother moving to an enum for the unused Script classes +#[derive(Clone, Debug)] pub struct Output { pub amount: u64, pub key: EdwardsPoint, @@ -86,6 +88,7 @@ impl Output { } } +#[derive(Clone, Debug)] pub struct TransactionPrefix { pub version: u64, pub unlock_time: u64, @@ -121,6 +124,7 @@ impl TransactionPrefix { } } +#[derive(Clone, Debug)] pub struct RctBase { pub fee: u64, pub ecdh_info: Vec<[u8; 8]>, @@ -153,6 +157,7 @@ impl RctBase { } } +#[derive(Clone, Debug)] pub enum RctPrunable { Null, Clsag { @@ -209,6 +214,7 @@ impl RctPrunable { } } +#[derive(Clone, Debug)] pub struct RctSignatures { pub base: RctBase, pub prunable: RctPrunable @@ -226,6 +232,7 @@ impl RctSignatures { } } +#[derive(Clone, Debug)] pub struct Transaction { pub prefix: TransactionPrefix, pub rct_signatures: RctSignatures