umya_spreadsheet/structs/
field.rs

1// field
2use crate::reader::driver::*;
3use crate::structs::Int32Value;
4use crate::writer::driver::*;
5use quick_xml::events::{BytesStart, Event};
6use quick_xml::Reader;
7use quick_xml::Writer;
8use std::io::Cursor;
9
10#[derive(Clone, Default, Debug)]
11pub struct Field {
12    x: Int32Value,
13}
14impl Field {
15    pub fn get_data_field(&self) -> &i32 {
16        self.x.get_value()
17    }
18
19    pub fn set_data_field(&mut self, value: i32) -> &mut Self {
20        self.x.set_value(value);
21        self
22    }
23
24    pub(crate) fn set_attributes<R: std::io::BufRead>(
25        &mut self,
26        _reader: &mut Reader<R>,
27        e: &BytesStart,
28    ) {
29        set_string_from_xml!(self, e, x, "x");
30    }
31
32    pub(crate) fn write_to(&self, writer: &mut Writer<Cursor<Vec<u8>>>) {
33        // pivotField
34        write_start_tag(
35            writer,
36            "field",
37            vec![("x", &self.x.get_value_string())],
38            true,
39        );
40    }
41}