1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
use clap::ValueEnum;
use serde::{Deserialize, Serialize};
use strum::{Display, EnumIter, EnumString};
#[derive(Debug, Clone, Copy, Serialize, Deserialize, ValueEnum, Display, EnumIter, EnumString)]
#[strum(serialize_all = "lowercase")]
#[serde(rename_all = "lowercase")]
pub enum StateType {
Closed,
Open,
All,
}
impl StateType {
pub fn available_for_choosing() -> [StateType; 2] {
use StateType::*;
[Closed, Open]
}
pub fn is_done(&self) -> bool {
match self {
StateType::Closed => true,
StateType::Open => false,
StateType::All => false,
}
}
}