use $crate::keys::IntoDescriptorKey;
let secp = $crate::bitcoin::secp256k1::Secp256k1::new();
- let mut keys = vec![];
- $(
- keys.push($key.into_descriptor_key());
- )*
+ let keys = vec![
+ $(
+ $key.into_descriptor_key(),
+ )*
+ ];
keys.into_iter().collect::<Result<Vec<_>, _>>()
.map_err($crate::descriptor::DescriptorError::Key)
use $crate::keys::IntoDescriptorKey;
let secp = $crate::bitcoin::secp256k1::Secp256k1::new();
- let mut keys = vec![];
- $(
- keys.push($key.into_descriptor_key());
- )*
+ let keys = vec![
+ $(
+ $key.into_descriptor_key(),
+ )*
+ ];
keys.into_iter().collect::<Result<Vec<_>, _>>()
.map_err($crate::descriptor::DescriptorError::Key)
KeychainKind::Internal => vec![bip32::ChildNumber::from_normal_idx(1)?].into(),
};
- let mut source_path = Vec::with_capacity(3);
- source_path.push(bip32::ChildNumber::from_hardened_idx(bip)?);
- source_path.push(bip32::ChildNumber::from_hardened_idx(0)?);
- source_path.push(bip32::ChildNumber::from_hardened_idx(0)?);
- let source_path: bip32::DerivationPath = source_path.into();
+ let source_path = bip32::DerivationPath::from(vec![
+ bip32::ChildNumber::from_hardened_idx(bip)?,
+ bip32::ChildNumber::from_hardened_idx(0)?,
+ bip32::ChildNumber::from_hardened_idx(0)?,
+ ]);
Ok((key, (parent_fingerprint, source_path), derivation_path))
}