umya_spreadsheet/structs/
item_values.rs

1use super::EnumTrait;
2use std::str::FromStr;
3#[derive(Debug, Clone, Eq, Ord, PartialEq, PartialOrd)]
4pub enum ItemValues {
5    Average,
6    Blank,
7    Count,
8    CountA,
9    Data,
10    Default,
11    Grand,
12    Maximum,
13    Minimum,
14    Product,
15    StandardDeviation,
16    StandardDeviationP,
17    Sum,
18    Variance,
19    VarianceP,
20}
21impl Default for ItemValues {
22    #[inline]
23    fn default() -> Self {
24        Self::Default
25    }
26}
27impl EnumTrait for ItemValues {
28    #[inline]
29    fn get_value_string(&self) -> &str {
30        match &self {
31            Self::Average => "avg",
32            Self::Blank => "blank",
33            Self::Count => "count",
34            Self::CountA => "countA",
35            Self::Data => "data",
36            Self::Default => "default",
37            Self::Grand => "grand",
38            Self::Maximum => "max",
39            Self::Minimum => "min",
40            Self::Product => "product",
41            Self::StandardDeviation => "stdDev",
42            Self::StandardDeviationP => "stdDevP",
43            Self::Sum => "sum",
44            Self::Variance => "var",
45            Self::VarianceP => "varP",
46        }
47    }
48}
49impl FromStr for ItemValues {
50    type Err = ();
51
52    #[inline]
53    fn from_str(input: &str) -> Result<Self, Self::Err> {
54        match input {
55            "avg" => Ok(Self::Average),
56            "blank" => Ok(Self::Blank),
57            "count" => Ok(Self::Count),
58            "countA" => Ok(Self::CountA),
59            "data" => Ok(Self::Data),
60            "default" => Ok(Self::Default),
61            "grand" => Ok(Self::Grand),
62            "max" => Ok(Self::Maximum),
63            "min" => Ok(Self::Minimum),
64            "product" => Ok(Self::Product),
65            "stdDev" => Ok(Self::StandardDeviation),
66            "stdDevP" => Ok(Self::StandardDeviationP),
67            "sum" => Ok(Self::Sum),
68            "var" => Ok(Self::Variance),
69            "varP" => Ok(Self::VarianceP),
70            _ => Err(()),
71        }
72    }
73}