nvim_api/types/got_mode.rs
1use nvim_types::{
2 conversion::{self, FromObject},
3 serde::Deserializer,
4 Object,
5};
6use serde::Deserialize;
7
8use super::Mode;
9
10#[non_exhaustive]
11#[derive(Clone, Debug, Eq, PartialEq, Hash, Deserialize)]
12pub struct GotMode {
13 pub blocking: bool,
14 pub mode: Mode,
15}
16
17impl FromObject for GotMode {
18 fn from_object(obj: Object) -> Result<Self, conversion::Error> {
19 Self::deserialize(Deserializer::new(obj)).map_err(Into::into)
20 }
21}