mirror of
https://github.com/logos-blockchain/lssa.git
synced 2026-01-22 23:23:28 +00:00
33 lines
718 B
Rust
33 lines
718 B
Rust
use risc0_zkvm::{
|
|
guest::env,
|
|
};
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
type AccountAddr = [u8; 32];
|
|
|
|
#[derive(Serialize, Deserialize)]
|
|
pub struct UTXOPayload {
|
|
pub owner: AccountAddr,
|
|
pub asset: Vec<u8>,
|
|
// TODO: change to u256
|
|
pub amount: u128,
|
|
pub privacy_flag: bool,
|
|
}
|
|
|
|
fn main() {
|
|
let utxo_spent: UTXOPayload = env::read();
|
|
let owners_parts: Vec<(u128, AccountAddr)> = env::read();
|
|
|
|
let res: Vec<(UTXOPayload, AccountAddr)> = owners_parts.into_iter().map(|(amount, addr)| (
|
|
UTXOPayload {
|
|
owner: addr.clone(),
|
|
asset: vec![],
|
|
amount,
|
|
privacy_flag: true,
|
|
},
|
|
addr
|
|
)).collect();
|
|
|
|
env::commit(&(res));
|
|
}
|