// Copyright © SixtyFPS GmbH // SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-commercial //! Extensions to the LSP use lsp_types::notification::Notification; use serde::{Deserialize, Serialize}; /// Taken from rust-analizer pub enum ServerStatusNotification {} impl Notification for ServerStatusNotification { type Params = ServerStatusParams; const METHOD: &'static str = "experimental/serverStatus"; } #[derive(Deserialize, Serialize, PartialEq, Eq, Clone)] pub struct ServerStatusParams { pub health: Health, pub quiescent: bool, pub message: Option, } #[derive(Serialize, Deserialize, Clone, Copy, PartialEq, Eq)] #[serde(rename_all = "camelCase")] pub enum Health { Ok, Warning, Error, }