pub trait EnqueueMessage<Origin: MaxEncodedLen> {
type MaxMessageLen: Get<u32>;
// Required methods
fn enqueue_message(
message: BoundedSlice<'_, u8, Self::MaxMessageLen>,
origin: Origin,
);
fn enqueue_messages<'a>(
messages: impl Iterator<Item = BoundedSlice<'a, u8, Self::MaxMessageLen>>,
origin: Origin,
);
fn sweep_queue(origin: Origin);
}
Expand description
Can enqueue messages for multiple origins.
Required Associated Types§
Sourcetype MaxMessageLen: Get<u32>
type MaxMessageLen: Get<u32>
The maximal length any enqueued message may have.
Required Methods§
Sourcefn enqueue_message(
message: BoundedSlice<'_, u8, Self::MaxMessageLen>,
origin: Origin,
)
fn enqueue_message( message: BoundedSlice<'_, u8, Self::MaxMessageLen>, origin: Origin, )
Enqueue a single message
from a specific origin
.
Sourcefn enqueue_messages<'a>(
messages: impl Iterator<Item = BoundedSlice<'a, u8, Self::MaxMessageLen>>,
origin: Origin,
)
fn enqueue_messages<'a>( messages: impl Iterator<Item = BoundedSlice<'a, u8, Self::MaxMessageLen>>, origin: Origin, )
Enqueue multiple messages
from a specific origin
.
Sourcefn sweep_queue(origin: Origin)
fn sweep_queue(origin: Origin)
Any remaining unprocessed messages should happen only lazily, not proactively.
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.