Skip to content

Commit 757b7e3

Browse files
committed
adapter - get_balance_leaf - add is_spender
1 parent cdf1009 commit 757b7e3

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

adapter/src/lib.rs

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,14 +42,18 @@ pub fn get_signable_state_root(
4242
Ok(res)
4343
}
4444

45-
pub fn get_balance_leaf(acc: &Address, amnt: &BigNum) -> Result<[u8; 32], Box<dyn Error>> {
46-
let tokens = [
47-
Token::Address(EthAddress::from_slice(acc.as_bytes())),
48-
Token::Uint(
49-
U256::from_dec_str(&amnt.to_str_radix(10))
50-
.map_err(|_| ChannelError::InvalidArgument("failed to parse amt".into()))?,
51-
),
52-
];
45+
pub fn get_balance_leaf(is_spender: bool, acc: &Address, amnt: &BigNum) -> Result<[u8; 32], Box<dyn Error>> {
46+
let address = Token::Address(EthAddress::from_slice(acc.as_bytes()));
47+
let amount = Token::Uint(
48+
U256::from_dec_str(&amnt.to_str_radix(10))
49+
.map_err(|_| ChannelError::InvalidArgument("failed to parse amt".into()))?,
50+
);
51+
52+
let tokens = if is_spender {
53+
vec![Token::String("spender".into()), address, amount]
54+
} else {
55+
vec![address, amount]
56+
};
5357
let encoded = encode(&tokens).to_vec();
5458

5559
let mut result = Keccak::new_keccak256();

0 commit comments

Comments
 (0)