pub trait AxelarExecutableInterface: CustomAxelarExecutable + DeriveOnly {
// Required methods
fn gateway(env: &Env) -> Address;
fn execute(
env: &Env,
source_chain: String,
message_id: String,
source_address: String,
payload: Bytes,
) -> Result<(), <Self as CustomAxelarExecutable>::Error>;
}Expand description
Interface for an Axelar Executable app. Use the AxelarExecutable derive macro to implement this interface.
DO NOT IMPLEMENT THIS MANUALLY!
Required Methods§
Sourcefn execute(
env: &Env,
source_chain: String,
message_id: String,
source_address: String,
payload: Bytes,
) -> Result<(), <Self as CustomAxelarExecutable>::Error>
fn execute( env: &Env, source_chain: String, message_id: String, source_address: String, payload: Bytes, ) -> Result<(), <Self as CustomAxelarExecutable>::Error>
Execute a cross-chain message with the given payload. This function must validate that the message is received from the trusted gateway.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.