merriam_webster_model/entry/
usage_section.rs

1use super::verbal_illustrations::VerbalIllustrations;
2
3pub type UsageSection = Vec<Usage>;
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct Usage {
7    #[serde(rename = "pl")]
8    pub label: String,
9    #[serde(rename = "pt")]
10    pub text: Vec<UsageText>,
11    #[serde(rename = "uarefs")]
12    pub see_in_addition: Option<Vec<UsageInAddition>>,
13}
14
15#[derive(Debug, Clone, Serialize, Deserialize)]
16#[serde(untagged)]
17pub enum UsageText {
18    Text(TextUsageType),
19    VerbalIllustrations(VerbalIllustrations),
20}
21
22pub type TextUsageType = (TextUsageTypeKey, String);
23
24#[derive(Debug, Clone, Serialize, Deserialize)]
25pub enum TextUsageTypeKey {
26    #[serde(rename = "text")]
27    Key,
28}
29
30#[derive(Debug, Clone, Serialize, Deserialize)]
31pub struct UsageInAddition {
32    pub uarefs: String,
33}