pub type XcmRouter = WithUniqueTopic<(ParentAsUmp<ParachainSystem, (), ()>, XcmpQueue)>;
Expand description
The means for routing XCM messages which are not for local execution into the right message queues.
Aliased Type§
struct XcmRouter(/* private fields */);
Trait Implementations
Source§impl<Inner> InspectMessageQueues for WithUniqueTopic<Inner>where
Inner: InspectMessageQueues,
impl<Inner> InspectMessageQueues for WithUniqueTopic<Inner>where
Inner: InspectMessageQueues,
Source§fn clear_messages()
fn clear_messages()
Clear the queues at the beginning of Runtime API call, so that subsequent
Self::get_messages()
will return only messages generated by said Runtime API.Source§fn get_messages() -> Vec<(VersionedLocation, Vec<VersionedXcm<()>>)>
fn get_messages() -> Vec<(VersionedLocation, Vec<VersionedXcm<()>>)>
Get queued messages and their destinations.
Source§impl<Inner> SendXcm for WithUniqueTopic<Inner>where
Inner: SendXcm,
impl<Inner> SendXcm for WithUniqueTopic<Inner>where
Inner: SendXcm,
Source§type Ticket = (<Inner as SendXcm>::Ticket, [u8; 32])
type Ticket = (<Inner as SendXcm>::Ticket, [u8; 32])
Intermediate value which connects the two phases of the send operation.
Source§fn validate(
destination: &mut Option<Location>,
message: &mut Option<Xcm<()>>,
) -> Result<(<WithUniqueTopic<Inner> as SendXcm>::Ticket, Assets), SendError>
fn validate( destination: &mut Option<Location>, message: &mut Option<Xcm<()>>, ) -> Result<(<WithUniqueTopic<Inner> as SendXcm>::Ticket, Assets), SendError>
Check whether the given
_message
is deliverable to the given _destination
and if so
determine the cost which will be paid by this chain to do so, returning a Validated
token
which can be used to enact delivery. Read moreSource§fn deliver(
ticket: <WithUniqueTopic<Inner> as SendXcm>::Ticket,
) -> Result<[u8; 32], SendError>
fn deliver( ticket: <WithUniqueTopic<Inner> as SendXcm>::Ticket, ) -> Result<[u8; 32], SendError>
Actually carry out the delivery operation for a previously validated message sending.
Source§fn ensure_successful_delivery(location: Option<Location>)
fn ensure_successful_delivery(location: Option<Location>)
Ensure
[Self::delivery]
is successful for the given location
when called in benchmarks.