Trait xcm_executor::Config
source · pub trait Config {
Show 24 associated items
type RuntimeCall: Parameter + Dispatchable<PostInfo = PostDispatchInfo> + GetDispatchInfo;
type XcmSender: SendXcm;
type AssetTransactor: TransactAsset;
type OriginConverter: ConvertOrigin<<Self::RuntimeCall as Dispatchable>::RuntimeOrigin>;
type IsReserve: ContainsPair<MultiAsset, MultiLocation>;
type IsTeleporter: ContainsPair<MultiAsset, MultiLocation>;
type Aliasers: ContainsPair<MultiLocation, MultiLocation>;
type UniversalLocation: Get<InteriorMultiLocation>;
type Barrier: ShouldExecute;
type Weigher: WeightBounds<Self::RuntimeCall>;
type Trader: WeightTrader;
type ResponseHandler: OnResponse;
type AssetTrap: DropAssets;
type AssetLocker: AssetLock;
type AssetExchanger: AssetExchange;
type AssetClaims: ClaimAssets;
type SubscriptionService: VersionChangeNotifier;
type PalletInstancesInfo: PalletsInfoAccess;
type MaxAssetsIntoHolding: Get<u32>;
type FeeManager: FeeManager;
type MessageExporter: ExportXcm;
type UniversalAliases: Contains<(MultiLocation, Junction)>;
type CallDispatcher: CallDispatcher<Self::RuntimeCall>;
type SafeCallFilter: Contains<Self::RuntimeCall>;
}
Expand description
The trait to parameterize the XcmExecutor
.
Required Associated Types§
sourcetype RuntimeCall: Parameter + Dispatchable<PostInfo = PostDispatchInfo> + GetDispatchInfo
type RuntimeCall: Parameter + Dispatchable<PostInfo = PostDispatchInfo> + GetDispatchInfo
The outer call dispatch type.
sourcetype AssetTransactor: TransactAsset
type AssetTransactor: TransactAsset
How to withdraw and deposit an asset.
sourcetype OriginConverter: ConvertOrigin<<Self::RuntimeCall as Dispatchable>::RuntimeOrigin>
type OriginConverter: ConvertOrigin<<Self::RuntimeCall as Dispatchable>::RuntimeOrigin>
How to get a call origin from a OriginKind
value.
sourcetype IsReserve: ContainsPair<MultiAsset, MultiLocation>
type IsReserve: ContainsPair<MultiAsset, MultiLocation>
Combinations of (Asset, Location) pairs which we trust as reserves.
sourcetype IsTeleporter: ContainsPair<MultiAsset, MultiLocation>
type IsTeleporter: ContainsPair<MultiAsset, MultiLocation>
Combinations of (Asset, Location) pairs which we trust as teleporters.
sourcetype Aliasers: ContainsPair<MultiLocation, MultiLocation>
type Aliasers: ContainsPair<MultiLocation, MultiLocation>
A list of (Origin, Target) pairs allowing a given Origin to be substituted with its corresponding Target pair.
sourcetype UniversalLocation: Get<InteriorMultiLocation>
type UniversalLocation: Get<InteriorMultiLocation>
This chain’s Universal Location.
sourcetype Barrier: ShouldExecute
type Barrier: ShouldExecute
Whether we should execute the given XCM at all.
sourcetype Weigher: WeightBounds<Self::RuntimeCall>
type Weigher: WeightBounds<Self::RuntimeCall>
The means of determining an XCM message’s weight.
sourcetype Trader: WeightTrader
type Trader: WeightTrader
The means of purchasing weight credit for XCM execution.
sourcetype ResponseHandler: OnResponse
type ResponseHandler: OnResponse
What to do when a response of a query is found.
sourcetype AssetTrap: DropAssets
type AssetTrap: DropAssets
The general asset trap - handler for when assets are left in the Holding Register at the end of execution.
sourcetype AssetLocker: AssetLock
type AssetLocker: AssetLock
Handler for asset locking.
sourcetype AssetExchanger: AssetExchange
type AssetExchanger: AssetExchange
Handler for exchanging assets.
sourcetype AssetClaims: ClaimAssets
type AssetClaims: ClaimAssets
The handler for when there is an instruction to claim assets.
sourcetype SubscriptionService: VersionChangeNotifier
type SubscriptionService: VersionChangeNotifier
How we handle version subscription requests.
sourcetype PalletInstancesInfo: PalletsInfoAccess
type PalletInstancesInfo: PalletsInfoAccess
Information on all pallets.
sourcetype MaxAssetsIntoHolding: Get<u32>
type MaxAssetsIntoHolding: Get<u32>
The maximum number of assets we target to have in the Holding Register at any one time.
NOTE: In the worse case, the Holding Register may contain up to twice as many assets as this and any benchmarks should take that into account.
sourcetype FeeManager: FeeManager
type FeeManager: FeeManager
Configure the fees.
sourcetype MessageExporter: ExportXcm
type MessageExporter: ExportXcm
The method of exporting a message.
sourcetype UniversalAliases: Contains<(MultiLocation, Junction)>
type UniversalAliases: Contains<(MultiLocation, Junction)>
The origin locations and specific universal junctions to which they are allowed to elevate themselves.
sourcetype CallDispatcher: CallDispatcher<Self::RuntimeCall>
type CallDispatcher: CallDispatcher<Self::RuntimeCall>
The call dispatcher used by XCM.
XCM will use this to dispatch any calls. When no special call dispatcher is required,
this can be set to the same type as Self::Call
.
sourcetype SafeCallFilter: Contains<Self::RuntimeCall>
type SafeCallFilter: Contains<Self::RuntimeCall>
The safe call filter for Transact
.
Use this type to explicitly whitelist calls that cannot undergo recursion. This is a temporary measure until we properly account for proof size weights for XCM instructions.