Skip to content

Commit 88176a6

Browse files
OttoAllmendingerllm-git
andcommitted
feat(wasm-utxo): implement Display for WrapMiniscript
Adds proper Display trait implementation for WrapMiniscript and refactors toString to use it instead of directly calling the inner implementation. Adds necessary clippy allow attribute to handle shadow warning. Issue: BTC-2652 Co-authored-by: llm-git <[email protected]>
1 parent 4eec7a8 commit 88176a6

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

packages/wasm-utxo/src/miniscript.rs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ use crate::error::WasmMiniscriptError;
22
use crate::try_into_js_value::TryIntoJsValue;
33
use miniscript::bitcoin::{PublicKey, XOnlyPublicKey};
44
use miniscript::{bitcoin, Legacy, Miniscript, Segwitv0, Tap};
5+
use std::fmt;
56
use std::str::FromStr;
67
use wasm_bindgen::prelude::wasm_bindgen;
78
use wasm_bindgen::JsValue;
@@ -35,8 +36,9 @@ impl WrapMiniscript {
3536
}
3637

3738
#[wasm_bindgen(js_name = toString)]
39+
#[allow(clippy::inherent_to_string_shadow_display)]
3840
pub fn to_string(&self) -> String {
39-
unwrap_apply!(&self.0, |ms| ms.to_string())
41+
format!("{}", self)
4042
}
4143

4244
#[wasm_bindgen(js_name = encode)]
@@ -112,3 +114,9 @@ impl From<Miniscript<PublicKey, Legacy>> for WrapMiniscript {
112114
WrapMiniscript(WrapMiniscriptEnum::Legacy(miniscript))
113115
}
114116
}
117+
118+
impl fmt::Display for WrapMiniscript {
119+
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
120+
unwrap_apply!(&self.0, |ms| write!(f, "{}", ms))
121+
}
122+
}

0 commit comments

Comments
 (0)