Trait xcm::v2::SendXcm

source ·
pub trait SendXcm {
    // Required method
    fn send_xcm(
        destination: impl Into<MultiLocation>,
        message: Xcm<()>
    ) -> SendResult;
}
Expand description

Utility for sending an XCM message.

These can be amalgamated in tuples to form sophisticated routing systems. In tuple format, each router might return NotApplicable to pass the execution to the next sender item. Note that each NotApplicable might alter the destination and the XCM message for to the next router.

Example


/// A sender that only passes the message through and does nothing.
struct Sender1;
impl SendXcm for Sender1 {
    fn send_xcm(destination: impl Into<MultiLocation>, message: Xcm<()>) -> SendResult {
        return Err(SendError::NotApplicable(destination.into(), message))
    }
}

/// A sender that accepts a message that has an X2 junction, otherwise stops the routing.
struct Sender2;
impl SendXcm for Sender2 {
    fn send_xcm(destination: impl Into<MultiLocation>, message: Xcm<()>) -> SendResult {
        if let MultiLocation { parents: 0, interior: X2(j1, j2) } = destination.into() {
            Ok(())
        } else {
            Err(SendError::Unroutable)
        }
    }
}

/// A sender that accepts a message from a parent, passing through otherwise.
struct Sender3;
impl SendXcm for Sender3 {
    fn send_xcm(destination: impl Into<MultiLocation>, message: Xcm<()>) -> SendResult {
        let destination = destination.into();
        match destination {
            MultiLocation { parents: 1, interior: Here } => Ok(()),
            _ => Err(SendError::NotApplicable(destination, message)),
        }
    }
}

// A call to send via XCM. We don't really care about this.
let call: Vec<u8> = ().encode();
let message = Xcm(vec![Instruction::Transact {
    origin_type: OriginKind::Superuser,
    require_weight_at_most: 0,
    call: call.into(),
}]);

assert!(
    // Sender2 will block this.
    <(Sender1, Sender2, Sender3) as SendXcm>::send_xcm(Parent, message.clone())
        .is_err()
);

assert!(
    // Sender3 will catch this.
    <(Sender1, Sender3) as SendXcm>::send_xcm(Parent, message.clone())
        .is_ok()
);

Required Methods§

source

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

Send an XCM message to a given destination.

If it is not a destination which can be reached with this type but possibly could by others, then it MUST return NotApplicable. Any other error will cause the tuple implementation to exit early without trying other type fields.

Implementations on Foreign Types§

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm, TupleElement24: SendXcm, TupleElement25: SendXcm, TupleElement26: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm, TupleElement24: SendXcm, TupleElement25: SendXcm, TupleElement26: SendXcm, TupleElement27: SendXcm, TupleElement28: SendXcm, TupleElement29: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm, TupleElement24: SendXcm, TupleElement25: SendXcm, TupleElement26: SendXcm, TupleElement27: SendXcm, TupleElement28: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm, TupleElement24: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm, TupleElement24: SendXcm, TupleElement25: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl<TupleElement0: SendXcm, TupleElement1: SendXcm, TupleElement2: SendXcm, TupleElement3: SendXcm, TupleElement4: SendXcm, TupleElement5: SendXcm, TupleElement6: SendXcm, TupleElement7: SendXcm, TupleElement8: SendXcm, TupleElement9: SendXcm, TupleElement10: SendXcm, TupleElement11: SendXcm, TupleElement12: SendXcm, TupleElement13: SendXcm, TupleElement14: SendXcm, TupleElement15: SendXcm, TupleElement16: SendXcm, TupleElement17: SendXcm, TupleElement18: SendXcm, TupleElement19: SendXcm, TupleElement20: SendXcm, TupleElement21: SendXcm, TupleElement22: SendXcm, TupleElement23: SendXcm, TupleElement24: SendXcm, TupleElement25: SendXcm, TupleElement26: SendXcm, TupleElement27: SendXcm> SendXcm 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 send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

impl SendXcm for ()

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

source§

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

source§

fn send_xcm( destination: impl Into<MultiLocation>, message: Xcm<()> ) -> SendResult

Implementors§