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 魔法豆

Download history 411/week @ 2024-04-22 647/week @ 2024-04-29 280/week @ 2024-05-06 177/week @ 2024-05-13 386/week @ 2024-05-20 394/week @ 2024-05-27 395/week @ 2024-06-03 476/week @ 2024-06-10 578/week @ 2024-06-17 254/week @ 2024-06-24 433/week @ 2024-07-01 258/week @ 2024-07-08 657/week @ 2024-07-15 505/week @ 2024-07-22 639/week @ 2024-07-29 239/week @ 2024-08-05

2,049 每月下载量
用于 4 crates

Apache-2.0

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