Skip to content

Commit 1d23768

Browse files
committed
shorten TransactionBuilderConfigBuilder::build
1 parent 7bef890 commit 1d23768

File tree

1 file changed

+7
-24
lines changed

1 file changed

+7
-24
lines changed

rust/src/tx_builder.rs

Lines changed: 7 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -227,31 +227,14 @@ impl TransactionBuilderConfigBuilder {
227227
}
228228

229229
pub fn build(&self) -> Result<TransactionBuilderConfig, JsError> {
230+
let cfg = self.clone();
230231
Ok(TransactionBuilderConfig {
231-
fee_algo: match self.fee_algo {
232-
Some(ref fee_algo) => fee_algo.clone(),
233-
None => return Err(JsError::from_str("uninitialized field: fee_algo")),
234-
},
235-
pool_deposit: match self.pool_deposit {
236-
Some(ref pool_deposit) => pool_deposit.clone(),
237-
None => return Err(JsError::from_str("uninitialized field: pool_deposit")),
238-
},
239-
key_deposit: match self.key_deposit {
240-
Some(ref key_deposit) => key_deposit.clone(),
241-
None => return Err(JsError::from_str("uninitialized field: key_deposit")),
242-
},
243-
max_value_size: match self.max_value_size {
244-
Some(max_value_size) => max_value_size,
245-
None => return Err(JsError::from_str("uninitialized field: max_value_size")),
246-
},
247-
max_tx_size: match self.max_tx_size {
248-
Some(max_tx_size) => max_tx_size,
249-
None => return Err(JsError::from_str("uninitialized field: max_tx_size")),
250-
},
251-
coins_per_utxo_word: match self.coins_per_utxo_word {
252-
Some(ref coins_per_utxo_word) => coins_per_utxo_word.clone(),
253-
None => return Err(JsError::from_str("uninitialized field: coins_per_utxo_word")),
254-
},
232+
fee_algo: cfg.fee_algo.ok_or(JsError::from_str("uninitialized field: fee_algo"))?,
233+
pool_deposit: cfg.pool_deposit.ok_or(JsError::from_str("uninitialized field: pool_deposit"))?,
234+
key_deposit: cfg.key_deposit.ok_or(JsError::from_str("uninitialized field: key_deposit"))?,
235+
max_value_size: cfg.max_value_size.ok_or(JsError::from_str("uninitialized field: max_value_size"))?,
236+
max_tx_size: cfg.max_tx_size.ok_or(JsError::from_str("uninitialized field: max_tx_size"))?,
237+
coins_per_utxo_word: cfg.coins_per_utxo_word.ok_or(JsError::from_str("uninitialized field: coins_per_utxo_word"))?,
255238
prefer_pure_change: self.prefer_pure_change,
256239
})
257240
}

0 commit comments

Comments
 (0)