docx_reader/documents/elements/
sym.rs1use serde::ser::{Serialize, SerializeStruct, Serializer};
2use serde::Deserialize;
3
4#[derive(Debug, Clone, Deserialize, PartialEq)]
5#[serde(rename_all = "camelCase")]
6pub struct Sym {
7 pub font: String,
8 pub char: String,
9}
10
11impl Sym {
12 pub fn new(font: impl Into<String>, char: impl Into<String>) -> Self {
13 Self {
14 font: font.into(),
15 char: char.into(),
16 }
17 }
18}
19
20impl Serialize for Sym {
21 fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
22 where
23 S: Serializer,
24 {
25 let mut t = serializer.serialize_struct("Sym", 1)?;
26 t.serialize_field("font", &self.font)?;
27 t.serialize_field("char", &self.char)?;
28 t.end()
29 }
30}