1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
use cosmwasm_std::{Addr, Deps, StdResult};
use cw_asset::AssetInfo;
use abstract_os::objects::{memory::Memory, AssetEntry, ContractEntry};
pub trait Resolve {
type Output;
fn resolve(&self, deps: Deps, memory: &Memory) -> StdResult<Self::Output>;
}
impl Resolve for AssetEntry {
type Output = AssetInfo;
fn resolve(&self, deps: Deps, memory: &Memory) -> StdResult<Self::Output> {
memory.query_asset(deps, self)
}
}
impl Resolve for ContractEntry {
type Output = Addr;
fn resolve(&self, deps: Deps, memory: &Memory) -> StdResult<Self::Output> {
memory.query_contract(deps, self)
}
}