pub trait QuotePrice {
type Balance: Balance;
type AssetKind;
// Required methods
fn quote_price_tokens_for_exact_tokens(
asset1: Self::AssetKind,
asset2: Self::AssetKind,
amount: Self::Balance,
include_fee: bool,
) -> Option<Self::Balance>;
fn quote_price_exact_tokens_for_tokens(
asset1: Self::AssetKind,
asset2: Self::AssetKind,
amount: Self::Balance,
include_fee: bool,
) -> Option<Self::Balance>;
}Expand description
Trait providing methods to quote swap prices between asset classes.
The quoted price is only guaranteed if no other swaps are made after the price is quoted and before the target swap (e.g., the swap is made immediately within the same transaction).
Required Associated Types§
Required Methods§
Sourcefn quote_price_tokens_for_exact_tokens(
asset1: Self::AssetKind,
asset2: Self::AssetKind,
amount: Self::Balance,
include_fee: bool,
) -> Option<Self::Balance>
fn quote_price_tokens_for_exact_tokens( asset1: Self::AssetKind, asset2: Self::AssetKind, amount: Self::Balance, include_fee: bool, ) -> Option<Self::Balance>
Quotes the amount of asset1 required to obtain the exact amount of asset2.
If include_fee is set to true, the price will include the pool’s fee.
If the pool does not exist or the swap cannot be made, None is returned.
Sourcefn quote_price_exact_tokens_for_tokens(
asset1: Self::AssetKind,
asset2: Self::AssetKind,
amount: Self::Balance,
include_fee: bool,
) -> Option<Self::Balance>
fn quote_price_exact_tokens_for_tokens( asset1: Self::AssetKind, asset2: Self::AssetKind, amount: Self::Balance, include_fee: bool, ) -> Option<Self::Balance>
Quotes the amount of asset2 resulting from swapping the exact amount of asset1.
If include_fee is set to true, the price will include the pool’s fee.
If the pool does not exist or the swap cannot be made, None is returned.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.