pub trait ExecuteXcm<Call> {
type Prepared: PreparedMessage;
// Required methods
fn prepare(message: Xcm<Call>) -> Result<Self::Prepared, Xcm<Call>>;
fn execute(
origin: impl Into<Location>,
pre: Self::Prepared,
id: &mut [u8; 32],
weight_credit: Weight,
) -> Outcome;
fn charge_fees(
location: impl Into<Location>,
fees: Assets,
) -> Result<(), Error>;
// Provided method
fn prepare_and_execute(
origin: impl Into<Location>,
message: Xcm<Call>,
id: &mut [u8; 32],
weight_limit: Weight,
weight_credit: Weight,
) -> Outcome { ... }
}
Expand description
Type of XCM message executor.
Required Associated Types§
type Prepared: PreparedMessage
Required Methods§
fn prepare(message: Xcm<Call>) -> Result<Self::Prepared, Xcm<Call>>
fn execute( origin: impl Into<Location>, pre: Self::Prepared, id: &mut [u8; 32], weight_credit: Weight, ) -> Outcome
Provided Methods§
fn prepare_and_execute( origin: impl Into<Location>, message: Xcm<Call>, id: &mut [u8; 32], weight_limit: Weight, weight_credit: Weight, ) -> Outcome
Object Safety§
This trait is not object safe.