@@ -22,16 +22,15 @@ use bdk::miniscript::BareCtx;
2222use bdk:: wallet:: tx_builder:: ChangeSpendPolicy ;
2323use bdk:: wallet:: AddressIndex as BdkAddressIndex ;
2424use bdk:: wallet:: AddressInfo as BdkAddressInfo ;
25- use bdk:: {
26- BlockTime , Error , FeeRate , KeychainKind , SignOptions , SyncOptions as BdkSyncOptions ,
27- Wallet as BdkWallet ,
28- } ;
25+ use bdk:: { bitcoin, BlockTime , Error , FeeRate , KeychainKind , SignOptions , SyncOptions as BdkSyncOptions , Wallet as BdkWallet } ;
2926use std:: collections:: HashSet ;
3027use std:: convert:: { From , TryFrom } ;
3128use std:: fmt;
3229use std:: ops:: Deref ;
3330use std:: str:: FromStr ;
3431use std:: sync:: { Arc , Mutex , MutexGuard } ;
32+ // use bitcoin::blockdata::script::Script as BdkScript;
33+ // use bdk::bitcoin::Script as BdkScript;
3534
3635uniffi_macros:: include_scaffolding!( "bdk" ) ;
3736
@@ -462,6 +461,30 @@ fn to_script_pubkey(address: &str) -> Result<Script, BdkError> {
462461 . map_err ( |e| BdkError :: Generic ( e. to_string ( ) ) )
463462}
464463
464+ // impl From<String> for Script {
465+ // fn from(_: String) -> Self {
466+ // todo!()
467+ // }
468+ // }
469+
470+ struct BindingsScript {
471+ script : Script
472+ }
473+
474+ impl BindingsScript {
475+ fn from_address ( address : & str ) -> Self {
476+ Address :: from_str ( address)
477+ . map ( |x| x. script_pubkey ( ) )
478+ . map_err ( |e| BdkError :: Generic ( e. to_string ( ) ) )
479+ }
480+
481+ fn from_raw_script ( output_script_raw : Vec < u8 > ) -> Self {
482+ return BindingsScript {
483+ script : Script :: from ( output_script_raw)
484+ } ;
485+ }
486+ }
487+
465488#[ derive( Clone , Debug ) ]
466489enum RbfValue {
467490 Default ,
0 commit comments