//! This module implements the `message_type` getter for all protobuf message types. use crate::protos::{MessageType::*, *}; /// Extends the protobuf Message trait to also have a static getter for the message /// type code. pub trait TrezorMessage: protobuf::Message + std::fmt::Debug { const MESSAGE_TYPE: MessageType; #[inline] #[deprecated(note = "Use `MESSAGE_TYPE` instead")] fn message_type() -> MessageType { Self::MESSAGE_TYPE } } /// This macro provides the TrezorMessage trait for a protobuf message. macro_rules! trezor_message_impl { ($($struct:ident => $mtype:expr),+ $(,)?) => {$( impl TrezorMessage for $struct { const MESSAGE_TYPE: MessageType = $mtype; } )+}; } include!("./generated.rs");