Skip to content

Commit 0ba1e94

Browse files
committed
ref(tmp_plan): fix some clippy nits, but still allow all
Common cases were redundant borrows of a reference, and redundant `clone`s of types that impl Copy
1 parent 728dff9 commit 0ba1e94

File tree

3 files changed

+28
-29
lines changed

3 files changed

+28
-29
lines changed

nursery/tmp_plan/src/lib.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
//! doing coin selection. Furthermore it provides which subset of those keys and hash pre-images you
1313
//! will actually need as well as what locktime or sequence number you need to set.
1414
//!
15-
//! Once you've obstained signatures, hash pre-images etc required by the plan, it can create a
15+
//! Once you've obtained signatures, hash pre-images etc required by the plan, it can create a
1616
//! witness/script_sig for the input.
1717
use bdk_chain::{bitcoin, collections::*, miniscript};
1818
use bitcoin::{
@@ -32,7 +32,7 @@ use miniscript::{
3232
};
3333

3434
pub(crate) fn varint_len(v: usize) -> usize {
35-
bitcoin::VarInt(v as u64).len() as usize
35+
bitcoin::VarInt(v as u64).len()
3636
}
3737

3838
mod plan_impls;
@@ -191,7 +191,7 @@ where
191191
let mut witness = self
192192
.template
193193
.iter()
194-
.flat_map(|step| step.to_witness_stack(&auth_data))
194+
.flat_map(|step| step.to_witness_stack(auth_data))
195195
.collect::<Vec<_>>();
196196
match &self.target {
197197
Target::Segwitv0 { .. } => todo!(),
@@ -250,7 +250,7 @@ where
250250
script,
251251
leaf_version,
252252
} => {
253-
let leaf_hash = TapLeafHash::from_script(&script, *leaf_version);
253+
let leaf_hash = TapLeafHash::from_script(script, *leaf_version);
254254
requirements.signatures = RequiredSignatures::TapScript {
255255
leaf_hash,
256256
plan_keys: vec![],
@@ -276,16 +276,16 @@ where
276276
required_signatures.push(plan_key.clone());
277277
}
278278
TemplateItem::Hash160(image) => {
279-
requirements.hash160_images.insert(image.clone());
279+
requirements.hash160_images.insert(*image);
280280
}
281281
TemplateItem::Hash256(image) => {
282-
requirements.hash256_images.insert(image.clone());
282+
requirements.hash256_images.insert(*image);
283283
}
284284
TemplateItem::Sha256(image) => {
285-
requirements.sha256_images.insert(image.clone());
285+
requirements.sha256_images.insert(*image);
286286
}
287287
TemplateItem::Ripemd160(image) => {
288-
requirements.ripemd160_images.insert(image.clone());
288+
requirements.ripemd160_images.insert(*image);
289289
}
290290
TemplateItem::Pk { .. } | TemplateItem::One | TemplateItem::Zero => { /* no requirements */
291291
}
@@ -307,17 +307,17 @@ where
307307

308308
/// The minimum required locktime height or time on the transaction using the plan.
309309
pub fn required_locktime(&self) -> Option<absolute::LockTime> {
310-
self.set_locktime.clone()
310+
self.set_locktime
311311
}
312312

313313
/// The minimum required sequence (height or time) on the input to satisfy the plan
314314
pub fn required_sequence(&self) -> Option<Sequence> {
315-
self.set_sequence.clone()
315+
self.set_sequence
316316
}
317317

318318
/// The minmum required transaction version required on the transaction using the plan.
319319
pub fn min_version(&self) -> Option<u32> {
320-
if let Some(_) = self.set_sequence {
320+
if self.set_sequence.is_some() {
321321
Some(2)
322322
} else {
323323
Some(1)

nursery/tmp_plan/src/plan_impls.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -146,8 +146,8 @@ where
146146
leaf_version: LeafVersion::TapScript,
147147
},
148148
},
149-
set_locktime: best_plan.min_locktime.clone(),
150-
set_sequence: best_plan.min_sequence.clone(),
149+
set_locktime: best_plan.min_locktime,
150+
set_sequence: best_plan.min_sequence,
151151
template: best_plan.template,
152152
})
153153
}
@@ -184,7 +184,7 @@ fn plan_steps<Ak: Clone + CanDerive, Ctx: ScriptContext>(
184184
) -> Option<TermPlan<Ak>> {
185185
match term {
186186
Terminal::True => Some(TermPlan::new(vec![])),
187-
Terminal::False => return None,
187+
Terminal::False => None,
188188
Terminal::PkH(key) => {
189189
let (asset_key, derivation_hint) = assets
190190
.keys
@@ -251,29 +251,29 @@ fn plan_steps<Ak: Clone + CanDerive, Ctx: ScriptContext>(
251251
}
252252
}
253253
Terminal::Sha256(image) => {
254-
if assets.sha256.contains(&image) {
255-
Some(TermPlan::new(vec![TemplateItem::Sha256(image.clone())]))
254+
if assets.sha256.contains(image) {
255+
Some(TermPlan::new(vec![TemplateItem::Sha256(*image)]))
256256
} else {
257257
None
258258
}
259259
}
260260
Terminal::Hash256(image) => {
261261
if assets.hash256.contains(image) {
262-
Some(TermPlan::new(vec![TemplateItem::Hash256(image.clone())]))
262+
Some(TermPlan::new(vec![TemplateItem::Hash256(*image)]))
263263
} else {
264264
None
265265
}
266266
}
267267
Terminal::Ripemd160(image) => {
268-
if assets.ripemd160.contains(&image) {
269-
Some(TermPlan::new(vec![TemplateItem::Ripemd160(image.clone())]))
268+
if assets.ripemd160.contains(image) {
269+
Some(TermPlan::new(vec![TemplateItem::Ripemd160(*image)]))
270270
} else {
271271
None
272272
}
273273
}
274274
Terminal::Hash160(image) => {
275-
if assets.hash160.contains(&image) {
276-
Some(TermPlan::new(vec![TemplateItem::Hash160(image.clone())]))
275+
if assets.hash160.contains(image) {
276+
Some(TermPlan::new(vec![TemplateItem::Hash160(*image)]))
277277
} else {
278278
None
279279
}

nursery/tmp_plan/src/requirements.rs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -148,7 +148,7 @@ impl RequiredSignatures<DescriptorPublicKey> {
148148
DescriptorSecretKey::Single(single) => single.key.inner,
149149
DescriptorSecretKey::XPrv(xprv) => {
150150
xprv.xkey
151-
.derive_priv(&secp, &plan_key.derivation_hint)?
151+
.derive_priv(secp, &plan_key.derivation_hint)?
152152
.private_key
153153
}
154154
DescriptorSecretKey::MultiXPrv(_) => {
@@ -158,13 +158,12 @@ impl RequiredSignatures<DescriptorPublicKey> {
158158
}
159159
};
160160

161-
let pubkey = PublicKey::from_secret_key(&secp, &secret_key);
161+
let pubkey = PublicKey::from_secret_key(secp, &secret_key);
162162
let x_only_pubkey = XOnlyPublicKey::from(pubkey);
163163

164-
let tweak =
165-
taproot::TapTweakHash::from_key_and_tweak(x_only_pubkey, merkle_root.clone());
166-
let keypair = KeyPair::from_secret_key(&secp, &secret_key.clone())
167-
.add_xonly_tweak(&secp, &tweak.to_scalar())
164+
let tweak = taproot::TapTweakHash::from_key_and_tweak(x_only_pubkey, *merkle_root);
165+
let keypair = KeyPair::from_secret_key(secp, &secret_key.clone())
166+
.add_xonly_tweak(secp, &tweak.to_scalar())
168167
.unwrap();
169168

170169
let msg = Message::from_slice(sighash.as_ref()).expect("Sighashes are 32 bytes");
@@ -200,7 +199,7 @@ impl RequiredSignatures<DescriptorPublicKey> {
200199
DescriptorSecretKey::Single(single) => single.key.inner,
201200
DescriptorSecretKey::XPrv(xprv) => {
202201
xprv.xkey
203-
.derive_priv(&secp, &plan_key.derivation_hint)?
202+
.derive_priv(secp, &plan_key.derivation_hint)?
204203
.private_key
205204
}
206205
DescriptorSecretKey::MultiXPrv(_) => {
@@ -209,7 +208,7 @@ impl RequiredSignatures<DescriptorPublicKey> {
209208
todo!();
210209
}
211210
};
212-
let keypair = KeyPair::from_secret_key(&secp, &secret_key.clone());
211+
let keypair = KeyPair::from_secret_key(secp, &secret_key.clone());
213212
let msg =
214213
Message::from_slice(sighash.as_ref()).expect("Sighashes are 32 bytes");
215214
let sig = secp.sign_schnorr_no_aux_rand(&msg, &keypair);

0 commit comments

Comments
 (0)