docx_rust/formatting/
lang.rs1use std::borrow::Cow;
2
3use hard_xml::{XmlRead, XmlWrite};
4
5use crate::{__setter, __xml_test_suites};
6
7#[derive(Debug, XmlRead, XmlWrite, Clone, Default)]
15#[cfg_attr(test, derive(PartialEq))]
16#[xml(tag = "w:lang")]
17pub struct Lang<'a> {
18 #[xml(attr = "w:val")]
19 pub val: Option<Cow<'a, str>>,
20 #[xml(attr = "w:eastAsia")]
21 pub east_asia: Option<Cow<'a, str>>,
22 #[xml(attr = "w:bidi")]
23 pub bidi: Option<Cow<'a, str>>,
24}
25
26impl<'a> Lang<'a> {
27 __setter!(east_asia: Option<Cow<'a, str>>);
28 __setter!(bidi: Option<Cow<'a, str>>);
29 __setter!(val: Option<Cow<'a, str>>);
30}
31
32__xml_test_suites!(
33 Lang,
34 Lang::default().east_asia("zh-CN"),
35 r#"<w:lang w:eastAsia="zh-CN"/>"#,
36);