Lock Fund
Build a transaction to send funds to a smart contract
The following shows a simple example of building a transaction to lock fund in a smart contact.
use whisky::*;
pub fn lock_fund(
script_address: &str,
datum: &str,
my_address: &str,
inputs: &[UTxO],
) -> Result<String, WError> {
let mut tx_builder = TxBuilder::new_core();
tx_builder
.tx_out(script_address, &[])
.tx_out_inline_datum_value(&WData::JSON(datum.to_string())) // JSON string datum
// .tx_out_datum_hash_value(WData::JSON(datum.to_string())) // Datum hash
.change_address(my_address)
.select_utxos_from(inputs, 5000000)
.complete_sync(None)?;
Ok(tx_builder.tx_hex())
}
Last updated