Derive more traits to use DerivationPath in rust-miniscript

This commit is contained in:
Sebastian Geisler 2020-06-03 17:44:42 +02:00
parent 9cb5d2e711
commit a3bb03eeb9
1 changed files with 3 additions and 3 deletions

View File

@ -64,7 +64,7 @@ pub struct ExtendedPrivKey {
serde_string_impl!(ExtendedPrivKey, "a BIP-32 extended private key");
/// Extended public key
#[derive(Copy, Clone, PartialEq, Eq, Debug)]
#[derive(Copy, Clone, PartialEq, Eq, Debug, PartialOrd, Ord, Hash)]
pub struct ExtendedPubKey {
/// The network this key is to be used on
pub network: Network,
@ -82,7 +82,7 @@ pub struct ExtendedPubKey {
serde_string_impl!(ExtendedPubKey, "a BIP-32 extended public key");
/// A child number for a derived key
#[derive(Copy, Clone, PartialEq, Eq, Debug)]
#[derive(Copy, Clone, PartialEq, Eq, Debug, PartialOrd, Ord, Hash)]
pub enum ChildNumber {
/// Non-hardened key
Normal {
@ -209,7 +209,7 @@ impl serde::Serialize for ChildNumber {
}
/// A BIP-32 derivation path.
#[derive(Clone, PartialEq, Eq)]
#[derive(Clone, PartialEq, Eq, Ord, PartialOrd, Hash)]
pub struct DerivationPath(Vec<ChildNumber>);
impl_index_newtype!(DerivationPath, ChildNumber);
serde_string_impl!(DerivationPath, "a BIP-32 derivation path");