pub trait AxelarExecutableInterface {
// Required methods
fn gateway(env: &Env) -> Address;
fn execute(
env: Env,
source_chain: String,
message_id: String,
source_address: String,
payload: Bytes,
);
// Provided method
fn validate(
env: Env,
source_chain: String,
message_id: String,
source_address: String,
payload: Bytes,
) { ... }
}Expand description
Interface for an Axelar Executable app.
Required Methods§
Provided Methods§
Sourcefn validate(
env: Env,
source_chain: String,
message_id: String,
source_address: String,
payload: Bytes,
)
fn validate( env: Env, source_chain: String, message_id: String, source_address: String, payload: Bytes, )
Validate if a gateway has approved a contract call.
This should be called from an implementation of execute before executing custom app logic.
This method doesn’t get exposed from the contract, as Soroban SDK’s contractimpl macro ignores default trait methods.
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.