From 15401f975ccf445dc58292ac8e70e7196173ef2e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pablo=20Andr=C3=A9s=20Dorado=20Su=C3=A1rez?= Date: Thu, 27 Jun 2024 00:42:29 -0500 Subject: [PATCH] change(kreivo-runtime): use separate filter for specific foreign assets reserves --- runtime/kreivo/src/xcm_config.rs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/runtime/kreivo/src/xcm_config.rs b/runtime/kreivo/src/xcm_config.rs index 146e0f3b..b2c2b446 100644 --- a/runtime/kreivo/src/xcm_config.rs +++ b/runtime/kreivo/src/xcm_config.rs @@ -190,6 +190,15 @@ impl> ContainsPair for ReserveAssetsFrom< matches_prefix(&Prefix::get(), &asset.id.0) } } +pub struct ReserveForeignAssetsFrom(PhantomData<(P, R)>); +impl, ReserveLocation: Get> ContainsPair + for ReserveForeignAssetsFrom +{ + fn contains(asset: &Asset, origin: &Location) -> bool { + log::trace!(target: "xcm::AssetsFrom", "prefix: {:?}, origin: {:?}", Prefix::get(), origin); + &ReserveLocation::get() == origin && matches_prefix(&Prefix::get(), &asset.id.0) + } +} pub type AssetFeeAsExistentialDepositMultiplierFeeCharger = AssetFeeAsExistentialDepositMultiplier< Runtime, @@ -213,7 +222,7 @@ pub type Traders = ( pub type Reserves = ( NativeAsset, ReserveAssetsFrom, - ReserveAssetsFrom, + ReserveForeignAssetsFrom, ); pub struct XcmConfig;