referrerpolicy=no-referrer-when-downgrade
xcm_emulator

Trait ServiceQueues

pub trait ServiceQueues {
    type OverweightMessageAddress;

    // Required method
    fn service_queues(weight_limit: Weight) -> Weight;

    // Provided method
    fn execute_overweight(
        _weight_limit: Weight,
        _address: Self::OverweightMessageAddress,
    ) -> Result<Weight, ExecuteOverweightError> { ... }
}
Expand description

Can service queues and execute overweight messages.

Required Associated Types§

type OverweightMessageAddress

Addresses a specific overweight message.

Required Methods§

fn service_queues(weight_limit: Weight) -> Weight

Service all message queues in some fair manner.

  • weight_limit: The maximum amount of dynamic weight that this call can use.

Returns the dynamic weight used by this call; is never greater than weight_limit. Should only be called in top-level runtime entry points like on_initialize or on_idle. Otherwise, stack depth limit errors may be miss-handled.

Provided Methods§

fn execute_overweight( _weight_limit: Weight, _address: Self::OverweightMessageAddress, ) -> Result<Weight, ExecuteOverweightError>

Executes a message that could not be executed by Self::service_queues() because it was temporarily overweight.

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.

Implementors§