rsiot::message

Trait MsgDataBound

Source
pub trait MsgDataBound:
    Clone
    + Debug
    + DeserializeOwned
    + PartialEq
    + Send
    + Serialize
    + Sync {
    type TService: ServiceBound;

    // Provided methods
    fn define_enabled_routes(&self) -> MsgRoute<Self::TService> { ... }
    fn define_time_to_live(&self) -> TimeToLiveValue { ... }
}
Expand description

Ограничения на данные, которые могут содержать сообщения

На перечислениях можно автоматически реализовывать трейты:

use serde::{Deserialize, Serialize};

#[derive(Clone, Debug, Deserialize, PartialEq, Serialize)]

Required Associated Types§

Source

type TService: ServiceBound

Перечисление, содержащее названия всех сервисов

Provided Methods§

Source

fn define_enabled_routes(&self) -> MsgRoute<Self::TService>

Разрешенные маршруты сообщения

Source

fn define_time_to_live(&self) -> TimeToLiveValue

Задать ограничение времени жизни сообщения

§Примеры

Все сообщения без ограничения по времени

impl MsgDataBound for Custom {
    fn define_time_to_live(&self) -> TimeToLiveValue {
        TimeToLiveValue::Infinite
    }
}

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§