3 个稳定版本

1.2.0 2023 年 6 月 9 日
1.1.0 2023 年 1 月 28 日
1.0.0 2022 年 8 月 8 日
0.1.0 2022 年 6 月 24 日

#3#asset-info

Apache-2.0

58KB
1.5K SLoC

STARFLEIT: 常用类型

这是一个常用类型及其查询器的集合,这些类型和查询器在 STARFLEIT 合约中常用。

数据类型

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>

来自工厂的配对信息查询器

它还提供了查询可用的 STARFLEIT 配对合约信息的查询接口。任何合约都可以查询配对信息到 STARFLEIT 工厂合约。

pub fn query_pair_info(
    querier: &QuerierWrapper,
    factory_contract: Addr,
    asset_infos: &[AssetInfo; 2],
) -> StdResult<PairInfo>

来自配对的配对信息查询器

它还提供了查询可用的 STARFLEIT 配对合约信息的查询接口。任何合约都可以查询配对信息到配对合约。

pub fn query_pair_info_from_pair(
    querier: &QuerierWrapper,
    pair_contract: Addr,
) -> StdResult<PairInfo>

依赖关系

~5–7MB
~150K SLoC