polytone_evm/
erc20.rs

1use alloy::primitives::Address;
2use cosmwasm_schema::cw_serde;
3use cosmwasm_std::Uint128;
4
5use crate::evm::EvmAddressLike;
6
7#[cw_serde]
8pub struct Erc20Token<T: EvmAddressLike> {
9    pub address: T,
10    pub amount: Uint128,
11}
12
13impl Erc20Token<Address> {
14    pub fn unchecked(self) -> Erc20Token<String> {
15        Erc20Token {
16            address: self.address.to_string(),
17            amount: self.amount,
18        }
19    }
20}