umya_spreadsheet/structs/
data_validation_operator_values.rs

1use super::EnumTrait;
2use std::str::FromStr;
3
4#[derive(Clone, Debug, Eq, Ord, PartialEq, PartialOrd)]
5pub enum DataValidationOperatorValues {
6    Between,
7    Equal,
8    GreaterThan,
9    GreaterThanOrEqual,
10    LessThan,
11    LessThanOrEqual,
12    NotBetween,
13    NotEqual,
14}
15
16impl EnumTrait for DataValidationOperatorValues {
17    #[inline]
18    fn get_value_string(&self) -> &str {
19        match self {
20            Self::Between => "between",
21            Self::Equal => "equal",
22            Self::GreaterThan => "greaterThan",
23            Self::GreaterThanOrEqual => "greaterThanOrEqual",
24            Self::LessThan => "lessThan",
25            Self::LessThanOrEqual => "lessThanOrEqual",
26            Self::NotBetween => "notBetween",
27            Self::NotEqual => "notEqual",
28        }
29    }
30}
31
32impl Default for DataValidationOperatorValues {
33    #[inline]
34    fn default() -> Self {
35        Self::LessThan
36    }
37}
38
39impl FromStr for DataValidationOperatorValues {
40    type Err = ();
41
42    #[inline]
43    fn from_str(input: &str) -> Result<Self, Self::Err> {
44        Ok(match input {
45            "between" => Self::Between,
46            "equal" => Self::Equal,
47            "greaterThan" => Self::GreaterThan,
48            "greaterThanOrEqual" => Self::GreaterThanOrEqual,
49            "lessThan" => Self::LessThan,
50            "lessThanOrEqual" => Self::LessThanOrEqual,
51            "notBetween" => Self::NotBetween,
52            "notEqual" => Self::NotEqual,
53            _ => return Err(()),
54        })
55    }
56}