19 个稳定版本
2.9.0 | 2023年7月28日 |
---|---|
2.8.0 | 2022年8月8日 |
2.7.0 | 2022年6月21日 |
2.4.0 | 2021年8月11日 |
1.0.1 | 2020年12月8日 |
#230 in 魔法豆
2,049 每月下载量
用于 4 crates
61KB
1.5K SLoC
Terraswap: 常见类型
这是一组在 terraswap 合约中常用类型和查询器的集合。
数据类型
AssetInfo
AssetInfo 是一个便利的包装器,用于将原生代币和合约代币表示为单个类型。
#[serde(rename_all = "snake_case")]
pub enum AssetInfo {
Token { contract_addr: HumanAddr },
NativeToken { denom: String },
}
Asset
它包含代币信息以及代币的数量。
pub struct Asset {
pub info: AssetInfo,
pub amount: Uint128,
}
PairInfo
它用于表示 Pair-Info-Querier 的响应数据。
pub struct PairInfo {
pub asset_infos: [AssetInfo; 2],
pub contract_addr: String,
pub liquidity_token: String,
pub asset_decimals: [u8; 2],
}
查询器
原生代币余额查询器
它使用 CosmWasm 标准接口查询账户余额到链上。
pub fn query_balance(
querier: &QuerierWrapper,
account_addr: Addr,
denom: String,
) -> StdResult<Uint128>
代币余额查询器
它为 CW20 代币余额提供类似的查询接口。
pub fn query_token_balance(
querier: &QuerierWrapper,
contract_addr: Addr,
account_addr: Addr,
) -> StdResult<Uint128>
代币信息查询器
它为 CW20 代币合约提供代币信息查询器。
pub fn query_token_info(
querier: &QuerierWrapper,
contract_addr: Addr,
) -> StdResult<TokenInfoResponse>
原生代币小数查询器
它为工厂合约提供原生代币小数查询器。
pub fn query_native_decimals(
querier: &QuerierWrapper,
factory_contract: Addr,
denom: String,
) -> StdResult<u8>
从工厂获取对对信息查询器
它还提供查询可用的 terraswap 对合约信息的接口。任何合约都可以查询对 terraswap 工厂合约的对信息。
pub fn query_pair_info(
querier: &QuerierWrapper,
factory_contract: Addr,
asset_infos: &[AssetInfo; 2],
) -> StdResult<PairInfo>
从对获取对信息查询器
它还提供查询可用的 terraswap 对合约信息的接口。任何合约都可以查询对对合约的对信息。
pub fn query_pair_info_from_pair(
querier: &QuerierWrapper,
pair_contract: Addr,
) -> StdResult<PairInfo>
依赖项
~5.5–7.5MB
~155K SLoC