Skip to main content
myrmic.dev

Message

Derive Macro Message 

Source
#[derive(Message)]
{
    // Attributes available to this derive:
    #[codec]
}
Expand description

Derives for the Codec-backed Decoder/Encoder impls, usable as #[derive(myrmic_sdk::Message)]. Binds a wire codec to a message type: generates Decoder + Encoder (myrmic_sdk) that delegate to the myrmic_sdk::Codec named in an optional #[codec(...)] attribute, defaulting to myrmic_sdk::Json when omitted. The type should also derive serde::{Serialize, Deserialize}.

#[derive(serde::Serialize, serde::Deserialize, myrmic_sdk::Message)]
#[codec(myrmic_sdk::Postcard)]   // any Codec type - built-in or your own; omit for Json
struct ServerMessage { /* ... */ }