Skip to content

Commit 954b12f

Browse files
apoelstrasanket1729
authored andcommitted
qualify Tree symbol
There are multiple `Tree`s in this file and the expression Tree is a somewhat obscure one. It is confusing to have it referenced without any qualification.
1 parent 5b5bf46 commit 954b12f

File tree

1 file changed

+13
-11
lines changed

1 file changed

+13
-11
lines changed

src/descriptor/tr.rs

+13-11
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ use bitcoin::util::taproot::{
1313
};
1414
use bitcoin::{self, secp256k1, Script};
1515
use errstr;
16-
use expression::{self, FromTree, Tree};
16+
use expression::{self, FromTree};
1717
use miniscript::{limits::TAPROOT_MAX_NODE_COUNT, Miniscript};
1818
use std::cmp::{self, max};
1919
use std::hash;
@@ -344,21 +344,23 @@ where
344344
<Pk as FromStr>::Err: ToString,
345345
<<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString,
346346
{
347-
fn from_tree(top: &Tree) -> Result<Self, Error> {
347+
fn from_tree(top: &expression::Tree) -> Result<Self, Error> {
348348
// Helper function to parse taproot script path
349-
fn parse_tr_script_spend<Pk: MiniscriptKey>(tree: &Tree) -> Result<TapTree<Pk>, Error>
349+
fn parse_tr_script_spend<Pk: MiniscriptKey>(
350+
tree: &expression::Tree,
351+
) -> Result<TapTree<Pk>, Error>
350352
where
351353
Pk: MiniscriptKey + FromStr,
352354
Pk::Hash: FromStr,
353355
<Pk as FromStr>::Err: ToString,
354356
<<Pk as MiniscriptKey>::Hash as FromStr>::Err: ToString,
355357
{
356358
match tree {
357-
Tree { name, args } if !name.is_empty() && args.is_empty() => {
359+
expression::Tree { name, args } if !name.is_empty() && args.is_empty() => {
358360
let script = Miniscript::<Pk, Tap>::from_str(name)?;
359361
Ok(TapTree::Leaf(Arc::new(script)))
360362
}
361-
Tree { name, args } if name.is_empty() && args.len() == 2 => {
363+
expression::Tree { name, args } if name.is_empty() && args.len() == 2 => {
362364
let left = parse_tr_script_spend(&args[0])?;
363365
let right = parse_tr_script_spend(&args[1])?;
364366
Ok(TapTree::Tree(Arc::new(left), Arc::new(right)))
@@ -456,7 +458,7 @@ impl<Pk: MiniscriptKey> fmt::Display for Tr<Pk> {
456458
}
457459

458460
// Helper function to parse string into miniscript tree form
459-
fn parse_tr_tree(s: &str) -> Result<Tree, Error> {
461+
fn parse_tr_tree(s: &str) -> Result<expression::Tree, Error> {
460462
for ch in s.bytes() {
461463
if !ch.is_ascii() {
462464
return Err(Error::Unprintable(ch));
@@ -466,11 +468,11 @@ fn parse_tr_tree(s: &str) -> Result<Tree, Error> {
466468
let ret = if s.len() > 3 && &s[..3] == "tr(" && s.as_bytes()[s.len() - 1] == b')' {
467469
let rest = &s[3..s.len() - 1];
468470
if !rest.contains(',') {
469-
let internal_key = Tree {
471+
let internal_key = expression::Tree {
470472
name: rest,
471473
args: vec![],
472474
};
473-
return Ok(Tree {
475+
return Ok(expression::Tree {
474476
name: "tr",
475477
args: vec![internal_key],
476478
});
@@ -479,19 +481,19 @@ fn parse_tr_tree(s: &str) -> Result<Tree, Error> {
479481
let (key, script) = split_once(rest, ',')
480482
.ok_or_else(|| Error::BadDescriptor("invalid taproot descriptor".to_string()))?;
481483

482-
let internal_key = Tree {
484+
let internal_key = expression::Tree {
483485
name: key,
484486
args: vec![],
485487
};
486488
if script.is_empty() {
487-
return Ok(Tree {
489+
return Ok(expression::Tree {
488490
name: "tr",
489491
args: vec![internal_key],
490492
});
491493
}
492494
let (tree, rest) = expression::Tree::from_slice_helper_curly(script, 1)?;
493495
if rest.is_empty() {
494-
Ok(Tree {
496+
Ok(expression::Tree {
495497
name: "tr",
496498
args: vec![internal_key, tree],
497499
})

0 commit comments

Comments
 (0)