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