1use derive_builder::Builder;
2use nvim_types::Object;
3
4#[derive(Clone, Debug, Default, Builder)]
6#[builder(default, build_fn(private, name = "fallible_build"))]
7pub struct CmdOpts {
8 #[builder(setter(strip_option))]
9 output: Option<bool>,
10}
11
12impl CmdOpts {
13 #[inline(always)]
14 pub fn builder() -> CmdOptsBuilder {
15 CmdOptsBuilder::default()
16 }
17}
18
19impl CmdOptsBuilder {
20 pub fn build(&mut self) -> CmdOpts {
21 self.fallible_build().expect("never fails, all fields have defaults")
22 }
23}
24
25#[derive(Default, Debug)]
26#[allow(non_camel_case_types)]
27#[repr(C)]
28pub(crate) struct KeyDict_cmd_opts {
29 output: Object,
30}
31
32impl From<&CmdOpts> for KeyDict_cmd_opts {
33 fn from(opts: &CmdOpts) -> Self {
34 Self { output: opts.output.into() }
35 }
36}