File tree Expand file tree Collapse file tree 5 files changed +9
-36
lines changed Expand file tree Collapse file tree 5 files changed +9
-36
lines changed Original file line number Diff line number Diff line change @@ -75,7 +75,7 @@ macro_rules! impl_psbtmap_consensus_decoding {
75
75
76
76
loop {
77
77
match $crate:: consensus:: Decodable :: consensus_decode( & mut d) {
78
- Ok ( pair) => $crate :: util :: psbt :: Map :: insert_pair( & mut rv , pair) ?,
78
+ Ok ( pair) => rv . insert_pair( pair) ?,
79
79
Err ( $crate:: consensus:: encode:: Error :: Psbt ( $crate:: util:: psbt:: Error :: NoMorePairs ) ) => return Ok ( rv) ,
80
80
Err ( e) => return Err ( e) ,
81
81
}
Original file line number Diff line number Diff line change @@ -37,34 +37,6 @@ const PSBT_GLOBAL_VERSION: u8 = 0xFB;
37
37
const PSBT_GLOBAL_PROPRIETARY : u8 = 0xFC ;
38
38
39
39
impl Map for PartiallySignedTransaction {
40
- fn insert_pair ( & mut self , pair : raw:: Pair ) -> Result < ( ) , encode:: Error > {
41
- let raw:: Pair {
42
- key : raw_key,
43
- value : raw_value,
44
- } = pair;
45
-
46
- match raw_key. type_value {
47
- PSBT_GLOBAL_UNSIGNED_TX => return Err ( Error :: DuplicateKey ( raw_key) . into ( ) ) ,
48
- PSBT_GLOBAL_PROPRIETARY => {
49
- let key = raw:: ProprietaryKey :: from_key ( raw_key. clone ( ) ) ?;
50
- match self . proprietary . entry ( key) {
51
- btree_map:: Entry :: Vacant ( empty_key) => {
52
- empty_key. insert ( raw_value) ;
53
- } ,
54
- btree_map:: Entry :: Occupied ( _) => return Err ( Error :: DuplicateKey ( raw_key) . into ( ) ) ,
55
- }
56
- }
57
- _ => match self . unknown . entry ( raw_key) {
58
- btree_map:: Entry :: Vacant ( empty_key) => {
59
- empty_key. insert ( raw_value) ;
60
- } ,
61
- btree_map:: Entry :: Occupied ( k) => return Err ( Error :: DuplicateKey ( k. key ( ) . clone ( ) ) . into ( ) ) ,
62
- }
63
- }
64
-
65
- Ok ( ( ) )
66
- }
67
-
68
40
fn get_pairs ( & self ) -> Result < Vec < raw:: Pair > , io:: Error > {
69
41
let mut rv: Vec < raw:: Pair > = Default :: default ( ) ;
70
42
Original file line number Diff line number Diff line change @@ -189,8 +189,8 @@ impl PsbtSigHashType {
189
189
}
190
190
}
191
191
192
- impl Map for Input {
193
- fn insert_pair ( & mut self , pair : raw:: Pair ) -> Result < ( ) , encode:: Error > {
192
+ impl Input {
193
+ pub ( super ) fn insert_pair ( & mut self , pair : raw:: Pair ) -> Result < ( ) , encode:: Error > {
194
194
let raw:: Pair {
195
195
key : raw_key,
196
196
value : raw_value,
@@ -303,7 +303,9 @@ impl Map for Input {
303
303
304
304
Ok ( ( ) )
305
305
}
306
+ }
306
307
308
+ impl Map for Input {
307
309
fn get_pairs ( & self ) -> Result < Vec < raw:: Pair > , io:: Error > {
308
310
let mut rv: Vec < raw:: Pair > = Default :: default ( ) ;
309
311
Original file line number Diff line number Diff line change @@ -29,9 +29,6 @@ pub use self::output::{Output, TapTree};
29
29
30
30
/// A trait that describes a PSBT key-value map.
31
31
pub ( super ) trait Map {
32
- /// Attempt to insert a key-value pair.
33
- fn insert_pair ( & mut self , pair : raw:: Pair ) -> Result < ( ) , encode:: Error > ;
34
-
35
32
/// Attempt to get all key-value pairs.
36
33
fn get_pairs ( & self ) -> Result < Vec < raw:: Pair > , io:: Error > ;
37
34
Original file line number Diff line number Diff line change @@ -120,8 +120,8 @@ impl TapTree {
120
120
}
121
121
}
122
122
123
- impl Map for Output {
124
- fn insert_pair ( & mut self , pair : raw:: Pair ) -> Result < ( ) , encode:: Error > {
123
+ impl Output {
124
+ pub ( super ) fn insert_pair ( & mut self , pair : raw:: Pair ) -> Result < ( ) , encode:: Error > {
125
125
let raw:: Pair {
126
126
key : raw_key,
127
127
value : raw_value,
@@ -177,7 +177,9 @@ impl Map for Output {
177
177
178
178
Ok ( ( ) )
179
179
}
180
+ }
180
181
182
+ impl Map for Output {
181
183
fn get_pairs ( & self ) -> Result < Vec < raw:: Pair > , io:: Error > {
182
184
let mut rv: Vec < raw:: Pair > = Default :: default ( ) ;
183
185
You can’t perform that action at this time.
0 commit comments