diff --git a/zed-rpc/src/proto.rs b/zed-rpc/src/proto.rs index 162e31df9acb8f7ea2fb7e120905fe80d2b7d4c6..a44576128bb00682cb07c0fb2c253f1c1966343d 100644 --- a/zed-rpc/src/proto.rs +++ b/zed-rpc/src/proto.rs @@ -5,6 +5,7 @@ use std::{convert::TryInto, io}; include!(concat!(env!("OUT_DIR"), "/zed.messages.rs")); pub trait EnvelopedMessage: Sized + Send + 'static { + const NAME: &'static str; fn into_envelope(self, id: u32, responding_to: Option) -> Envelope; fn matches_envelope(envelope: &Envelope) -> bool; fn from_envelope(envelope: Envelope) -> Option; @@ -17,6 +18,8 @@ pub trait RequestMessage: EnvelopedMessage { macro_rules! message { ($name:ident) => { impl EnvelopedMessage for $name { + const NAME: &'static str = std::stringify!($name); + fn into_envelope(self, id: u32, responding_to: Option) -> Envelope { Envelope { id,