1#![doc = env!("CARGO_PKG_DESCRIPTION")]
2#![forbid(unsafe_code)]
8
9pub mod auth;
10pub mod autocomplete;
11pub mod classify;
12pub mod collate;
13pub mod config;
14pub mod event;
15pub mod extension_event;
16pub mod js;
17pub mod json;
18pub mod message;
19pub mod model;
20pub mod models;
21pub mod rpc;
22pub mod session;
23pub mod settings;
24pub mod sync;
25pub mod system_prompt;
26pub mod time;
27
28use serde::{Deserialize, Deserializer};
29
30pub(crate) fn present<'de, D, T>(deserializer: D) -> Result<Option<T>, D::Error>
34where
35 D: Deserializer<'de>,
36 T: Deserialize<'de>,
37{
38 T::deserialize(deserializer).map(Some)
39}