1use crate::TldrLanguage;
4use core::str::FromStr;
5
6#[non_exhaustive]
17#[derive(Clone, Debug, Default, Eq, Hash, PartialEq)]
18#[cfg_attr(feature = "builder", derive(bon::Builder))]
19#[cfg_attr(feature = "builder", builder(on(TldrLanguage, into)))]
20#[cfg_attr(feature = "serde", derive(serde::Deserialize, serde::Serialize))]
21#[cfg_attr(feature = "serde", serde(default))]
22pub struct TldrContext {
23 #[cfg_attr(feature = "builder", builder(default))]
25 pub language: TldrLanguage,
26}
27
28impl FromStr for TldrContext {
29 type Err = ();
30
31 fn from_str(input: &str) -> Result<Self, Self::Err> {
32 Ok(TldrContext {
33 language: input.parse()?,
34 })
35 }
36}