3个版本 (稳定)
1.0.1 | 2023年7月26日 |
---|---|
1.0.0 | 2023年2月10日 |
0.1.1 | 2023年7月26日 |
#5 in #asset-info
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