umya_spreadsheet/structs/
totals_row_function_values.rs

1use super::EnumTrait;
2use std::str::FromStr;
3#[derive(Clone, Debug)]
4pub enum TotalsRowFunctionValues {
5    Average,
6    Count,
7    CountNumbers,
8    Custom,
9    Maximum,
10    Minimum,
11    None,
12    StandardDeviation,
13    Sum,
14    Variance,
15}
16impl Default for TotalsRowFunctionValues {
17    #[inline]
18    fn default() -> Self {
19        Self::None
20    }
21}
22impl EnumTrait for TotalsRowFunctionValues {
23    #[inline]
24    fn get_value_string(&self) -> &str {
25        match &self {
26            Self::Average => "average",
27            Self::Count => "count",
28            Self::CountNumbers => "countNums",
29            Self::Custom => "custom",
30            Self::Maximum => "max",
31            Self::Minimum => "min",
32            Self::None => "none",
33            Self::StandardDeviation => "stdDev",
34            Self::Sum => "sum",
35            Self::Variance => "var",
36        }
37    }
38}
39impl FromStr for TotalsRowFunctionValues {
40    type Err = ();
41
42    #[inline]
43    fn from_str(input: &str) -> Result<Self, Self::Err> {
44        match input {
45            "average" => Ok(Self::Average),
46            "count" => Ok(Self::Count),
47            "countNums" => Ok(Self::CountNumbers),
48            "custom" => Ok(Self::Custom),
49            "max" => Ok(Self::Maximum),
50            "min" => Ok(Self::Minimum),
51            "none" => Ok(Self::None),
52            "stdDev" => Ok(Self::StandardDeviation),
53            "sum" => Ok(Self::Sum),
54            "var" => Ok(Self::Variance),
55            _ => Err(()),
56        }
57    }
58}