@@ -123,6 +123,8 @@ pub mod util {
123123#[derive(Debug, PartialEq, Clone)]
124124pub enum Notification {
125125 PublishDiagnostics(lsp::PublishDiagnosticsParams),
126+ ShowMessage(lsp::ShowMessageParams),
127+ LogMessage(lsp::LogMessageParams),
126128}
127129
128130impl Notification {
@@ -138,6 +140,19 @@ impl Notification {
138140 // TODO: need to loop over diagnostics and distinguish them by URI
139141 Notification::PublishDiagnostics(params)
140142 }
143+
144+ lsp::notification::ShowMessage::METHOD => {
145+ let params: lsp::ShowMessageParams =
146+ params.parse().expect("Failed to parse ShowMessage params");
147+
148+ Notification::ShowMessage(params)
149+ }
150+ lsp::notification::LogMessage::METHOD => {
151+ let params: lsp::LogMessageParams =
152+ params.parse().expect("Failed to parse ShowMessage params");
153+
154+ Notification::LogMessage(params)
155+ }
141156 _ => unimplemented!("unhandled notification: {}", method),
142157 }
143158 }