umya_spreadsheet/structs/
true_false_blank_value.rs1#[derive(Clone, Default, Debug)]
2pub struct TrueFalseBlankValue {
3 value: Option<bool>,
4}
5impl TrueFalseBlankValue {
6 #[inline]
7 pub(crate) fn get_value(&self) -> Option<&bool> {
8 self.value.as_ref()
9 }
10
11 #[inline]
12 pub(crate) fn _get_value_str(&self) -> &str {
13 self.get_value().map_or("", |v| if *v { "t" } else { "f" })
14 }
15
16 #[inline]
17 pub(crate) fn get_value_string2(&self) -> &str {
18 self.get_value()
19 .map_or("", |v| if *v { "True" } else { "False" })
20 }
21
22 #[inline]
23 pub(crate) fn set_value(&mut self, value: bool) -> &mut Self {
24 self.value = Some(value);
25 self
26 }
27
28 #[inline]
29 pub(crate) fn set_value_string<S: Into<String>>(&mut self, value: S) -> &mut Self {
30 let value = value.into();
31 self.set_value(!(value.eq_ignore_ascii_case("f") || value.eq_ignore_ascii_case("false")))
32 }
33
34 #[inline]
35 pub(crate) fn has_value(&self) -> bool {
36 self.value.is_some()
37 }
38
39 #[inline]
40 pub(crate) fn _get_hash_string(&self) -> &str {
41 if self.has_value() {
42 return self._get_value_str();
43 }
44 "empty!!"
45 }
46}