pub struct ProxyAsset {
    pub asset: AssetEntry,
    pub value_reference: Option<ValueRef>,
}
Expand description

Every ProxyAsset provides a way to determine its value recursively relative to a base asset.

Fields§

§asset: AssetEntry

Asset entry that maps to an AssetInfo using raw-queries on ans_host

§value_reference: Option<ValueRef>

The value reference provides the tooling to get the value of the asset relative to the base asset.

Implementations§

source§

impl ProxyAsset

source

pub fn value( &mut self, deps: Deps<'_>, env: &Env, ans_host: &AnsHost, set_holding: Option<Uint128> ) -> AbstractResult<Uint128>

Calculates the value of the asset through the optionally provided ValueReference

source

pub fn trade_pair_value( &self, deps: Deps<'_>, env: &Env, ans_host: &AnsHost, valued_asset: Asset, pair: ContractEntry ) -> AbstractResult<Uint128>

Calculates the value of an asset compared to some base asset through the provided trading pair.

source

pub fn lp_value( &self, deps: Deps<'_>, env: &Env, ans_host: &AnsHost, lp_asset: Asset, pair: ContractEntry ) -> AbstractResult<Uint128>

Calculate the value of an LP token Uses the lp token name to query pair pool for both assets

Trait Implementations§

source§

impl Clone for ProxyAsset

source§

fn clone(&self) -> ProxyAsset

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ProxyAsset

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for ProxyAsset

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl JsonSchema for ProxyAsset

source§

fn schema_name() -> String

The name of the generated JSON Schema. Read more
source§

fn json_schema(gen: &mut SchemaGenerator) -> Schema

Generates a JSON Schema for this type. Read more
source§

fn is_referenceable() -> bool

Whether JSON Schemas generated for this type should be re-used where possible using the $ref keyword. Read more
source§

impl PartialEq<ProxyAsset> for ProxyAsset

source§

fn eq(&self, other: &ProxyAsset) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for ProxyAsset

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl Eq for ProxyAsset

source§

impl StructuralEq for ProxyAsset

source§

impl StructuralPartialEq for ProxyAsset

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

const: unstable · source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> DynClone for Twhere T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

source§

impl<T> From<T> for T

const: unstable · source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

const: unstable · source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
const: unstable · source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
const: unstable · source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for Twhere T: for<'de> Deserialize<'de>,