pub trait DEXRuntimeAPI<Block, AssetId, DEXId, Balance, LiquiditySourceType, SwapVariant>: Core<Block>where
    Block: Block,
    AssetId: Codec,
    DEXId: Codec,
    LiquiditySourceType: Codec,
    Balance: Codec + MaybeFromStr + MaybeDisplay,
    SwapVariant: Codec,{
    // Provided methods
    fn quote(
        &self,
        __runtime_api_at_param__: &BlockId<Block>,
        dex_id: DEXId,
        liquidity_source_type: LiquiditySourceType,
        input_asset_id: AssetId,
        output_asset_id: AssetId,
        amount: BalanceWrapper,
        swap_variant: SwapVariant
    ) -> Result<Option<SwapOutcomeInfo<Balance>>, ApiError> { ... }
    fn quote_with_context(
        &self,
        __runtime_api_at_param__: &BlockId<Block>,
        context: ExecutionContext,
        dex_id: DEXId,
        liquidity_source_type: LiquiditySourceType,
        input_asset_id: AssetId,
        output_asset_id: AssetId,
        amount: BalanceWrapper,
        swap_variant: SwapVariant
    ) -> Result<Option<SwapOutcomeInfo<Balance>>, ApiError> { ... }
    fn can_exchange(
        &self,
        __runtime_api_at_param__: &BlockId<Block>,
        dex_id: DEXId,
        liquidity_source_type: LiquiditySourceType,
        input_asset_id: AssetId,
        output_asset_id: AssetId
    ) -> Result<bool, ApiError> { ... }
    fn can_exchange_with_context(
        &self,
        __runtime_api_at_param__: &BlockId<Block>,
        context: ExecutionContext,
        dex_id: DEXId,
        liquidity_source_type: LiquiditySourceType,
        input_asset_id: AssetId,
        output_asset_id: AssetId
    ) -> Result<bool, ApiError> { ... }
    fn list_supported_sources(
        &self,
        __runtime_api_at_param__: &BlockId<Block>
    ) -> Result<Vec<LiquiditySourceType, Global>, ApiError> { ... }
    fn list_supported_sources_with_context(
        &self,
        __runtime_api_at_param__: &BlockId<Block>,
        context: ExecutionContext
    ) -> Result<Vec<LiquiditySourceType, Global>, ApiError> { ... }
}

Provided Methods§

fn quote( &self, __runtime_api_at_param__: &BlockId<Block>, dex_id: DEXId, liquidity_source_type: LiquiditySourceType, input_asset_id: AssetId, output_asset_id: AssetId, amount: BalanceWrapper, swap_variant: SwapVariant ) -> Result<Option<SwapOutcomeInfo<Balance>>, ApiError>

fn quote_with_context( &self, __runtime_api_at_param__: &BlockId<Block>, context: ExecutionContext, dex_id: DEXId, liquidity_source_type: LiquiditySourceType, input_asset_id: AssetId, output_asset_id: AssetId, amount: BalanceWrapper, swap_variant: SwapVariant ) -> Result<Option<SwapOutcomeInfo<Balance>>, ApiError>

fn can_exchange( &self, __runtime_api_at_param__: &BlockId<Block>, dex_id: DEXId, liquidity_source_type: LiquiditySourceType, input_asset_id: AssetId, output_asset_id: AssetId ) -> Result<bool, ApiError>

fn can_exchange_with_context( &self, __runtime_api_at_param__: &BlockId<Block>, context: ExecutionContext, dex_id: DEXId, liquidity_source_type: LiquiditySourceType, input_asset_id: AssetId, output_asset_id: AssetId ) -> Result<bool, ApiError>

fn list_supported_sources( &self, __runtime_api_at_param__: &BlockId<Block> ) -> Result<Vec<LiquiditySourceType, Global>, ApiError>

fn list_supported_sources_with_context( &self, __runtime_api_at_param__: &BlockId<Block>, context: ExecutionContext ) -> Result<Vec<LiquiditySourceType, Global>, ApiError>

Trait Implementations§

§

impl<Block, AssetId, DEXId, Balance, LiquiditySourceType, SwapVariant> RuntimeApiInfo for dyn DEXAPI<Block, AssetId, DEXId, Balance, LiquiditySourceType, SwapVariant> + 'staticwhere Block: Block,

§

const ID: [u8; 8] = [60u8, 23u8, 77u8, 119u8, 100u8, 6u8, 158u8, 97u8]

The identifier of the runtime api.
§

const VERSION: u32 = 1u32

The version of the runtime api.

Implementors§