pub trait AssetExchange {
    // Required method
    fn exchange_asset(
        origin: Option<&MultiLocation>,
        give: Assets,
        want: &MultiAssets,
        maximal: bool
    ) -> Result<Assets, Assets>;
}
Expand description

A service for exchanging assets.

Required Methods§

source

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

Handler for exchanging an asset.

  • origin: The location attempting the exchange; this should generally not matter.
  • give: The assets which have been removed from the caller.
  • want: The minimum amount of assets which should be given to the caller in case any exchange happens. If more assets are provided, then they should generally be of the same asset class if at all possible.
  • maximal: If true, then as much as possible should be exchanged.

Ok is returned along with the new set of assets which have been exchanged for give. At least want must be in the set. Some assets originally in give may also be in this set. In the case of returning an Err, then give is returned.

Implementations on Foreign Types§

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange, TupleElement24: AssetExchange, TupleElement25: AssetExchange, TupleElement26: AssetExchange, TupleElement27: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl AssetExchange for ()

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange, TupleElement24: AssetExchange, TupleElement25: AssetExchange, TupleElement26: AssetExchange, TupleElement27: AssetExchange, TupleElement28: AssetExchange, TupleElement29: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28, TupleElement29)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange> AssetExchange for (TupleElement0,)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange> AssetExchange for (TupleElement0, TupleElement1)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange, TupleElement24: AssetExchange, TupleElement25: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange, TupleElement24: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange, TupleElement24: AssetExchange, TupleElement25: AssetExchange, TupleElement26: AssetExchange, TupleElement27: AssetExchange, TupleElement28: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26, TupleElement27, TupleElement28)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange, TupleElement8: AssetExchange, TupleElement9: AssetExchange, TupleElement10: AssetExchange, TupleElement11: AssetExchange, TupleElement12: AssetExchange, TupleElement13: AssetExchange, TupleElement14: AssetExchange, TupleElement15: AssetExchange, TupleElement16: AssetExchange, TupleElement17: AssetExchange, TupleElement18: AssetExchange, TupleElement19: AssetExchange, TupleElement20: AssetExchange, TupleElement21: AssetExchange, TupleElement22: AssetExchange, TupleElement23: AssetExchange, TupleElement24: AssetExchange, TupleElement25: AssetExchange, TupleElement26: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9, TupleElement10, TupleElement11, TupleElement12, TupleElement13, TupleElement14, TupleElement15, TupleElement16, TupleElement17, TupleElement18, TupleElement19, TupleElement20, TupleElement21, TupleElement22, TupleElement23, TupleElement24, TupleElement25, TupleElement26)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

source§

impl<TupleElement0: AssetExchange, TupleElement1: AssetExchange, TupleElement2: AssetExchange, TupleElement3: AssetExchange, TupleElement4: AssetExchange, TupleElement5: AssetExchange, TupleElement6: AssetExchange, TupleElement7: AssetExchange> AssetExchange for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7)

source§

fn exchange_asset( origin: Option<&MultiLocation>, give: Assets, want: &MultiAssets, maximal: bool ) -> Result<Assets, Assets>

Implementors§