21 个稳定版本 (5 个主要版本)

5.3.0 2024 年 8 月 21 日
5.2.0 2024 年 7 月 4 日
5.1.0 2024 年 6 月 21 日
4.0.3 2024 年 6 月 19 日
0.3.1 2021 年 12 月 15 日

#297 in 魔法豆

Download history 784/week @ 2024-05-03 806/week @ 2024-05-10 597/week @ 2024-05-17 583/week @ 2024-05-24 1135/week @ 2024-05-31 1657/week @ 2024-06-07 1326/week @ 2024-06-14 1818/week @ 2024-06-21 1295/week @ 2024-06-28 1025/week @ 2024-07-05 864/week @ 2024-07-12 664/week @ 2024-07-19 909/week @ 2024-07-26 875/week @ 2024-08-02 1109/week @ 2024-08-09 1518/week @ 2024-08-16

每月下载量 4,574
用于 46 个 crate (38 个直接使用)

Apache-2.0

215KB
4.5K SLoC

星际港:常见类型

这是一个常用类型和查询器的集合,常用于星际港合约。

数据类型

AssetInfo

AssetInfo 是一个方便的包装器,用于表示一个代币是否是原生代币(来自特定的链,如 Terra 的 LUNA)或不是。它还返回该代币的合约地址。

pub enum AssetInfo {
    Token { contract_addr: Addr },
    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: Addr,
    pub liquidity_token: String,
    pub pair_type: PairType,
}

查询器

原生代币余额查询器

它使用 CosmWasm 标准接口查询账户的余额。

pub fn query_balance(
    querier: &QuerierWrapper,
    account_addr: impl Into<String>,
    denom: impl Into<String>,
) -> StdResult<Uint128>

代币余额查询器

它提供与 Native-Token-Balance-Querier 类似的查询接口,用于获取 CW20 代币余额。

pub fn query_token_balance(
    querier: &QuerierWrapper,
    contract_addr: impl Into<String>,
    account_addr: impl Into<String>,
) -> StdResult<Uint128>

代币供应查询器

它获取 CW20 代币的总供应量。

pub fn query_supply(
    querier: &QuerierWrapper,
    contract_addr: impl Into<String>,
) -> StdResult<Uint128>

对偶信息查询器

接受两个代币作为输入,并返回对偶的信息。

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

交换对偶模拟

模拟

模拟交换并返回输出数量、价差和佣金数量。

pub fn simulate(
    querier: &QuerierWrapper,
    pair_contract: impl Into<String>,
    offer_asset: &Asset,
) -> StdResult<SimulationResponse>

反向模拟

模拟反向交换并返回输入数量、价差和佣金数量。

pub fn reverse_simulate(
    querier: &QuerierWrapper,
    pair_contract: impl Into<String>,
    offer_asset: &Asset,
) -> StdResult<ReverseSimulationResponse>

依赖项

~15MB
~312K SLoC