#contracts #token #ibc #type #asset-info #orai-dex #oraichain

oraiswap

在奥莱链实验室的不同合同中使用的常见奥莱斯瓦普类型,如oraiDEX、IBC Wasm

3个版本 (稳定)

1.0.1 2023年7月26日
1.0.0 2023年2月10日
0.1.1 2023年7月26日

#5 in #asset-info


用于 cw20-ics20-msg

MIT 许可证

83KB
2K SLoC

奥莱斯瓦普:常用类型

这是一个常用类型及其查询器的集合,这些类型和查询器在奥莱斯瓦普合同中常用。

数据类型

AssetInfo

AssetInfo是一个方便的包装器,用于表示本地代币和合同代币作为单个类型。目前奥莱链区块链中只有Orai本地代币。

#[cw_serde]
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 contract_addr: Addr,
    pub asset_infos: [AssetInfo; 2],
}

查询器

本地代币余额查询器

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

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

代币余额查询器

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

pub fn query_token_balance(
    querier: &QuerierWrapper,
    contract_addr: Addr,
    account_addr: Addr,
) -> StdResult<Uint128> {

代币供应查询器

它为CW20代币合同提供代币供应查询器。

pub fn query_supply(
    querier: &QuerierWrapper,
    contract_addr: Addr,
) -> StdResult<Uint128> {

配对信息查询器

它还提供了查询可用奥莱斯瓦普配对合同信息的查询接口。任何合同都可以查询配对信息到奥莱斯瓦普工厂合同。

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

依赖项

~5.5–7.5MB
~162K SLoC