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
28
29
#![allow(missing_docs)]
use serde::{Deserialize, Serialize};
use crate::tag::Tag;
#[derive(Debug, Deserialize, Serialize, PartialEq, Eq)]
pub enum TagStatus {
Abandoned,
Cancelled,
Completed,
Licensed,
Ongoing,
Unknown(String),
}
impl TagStatus {
pub(crate) fn from_tag(tag: Tag) -> TagStatus {
match tag.title.as_str() {
"Abandoned" => TagStatus::Abandoned,
"Cancelled" => TagStatus::Cancelled,
"Completed" => TagStatus::Completed,
"Licensed" => TagStatus::Licensed,
"Ongoing" => TagStatus::Ongoing,
unknown => TagStatus::Unknown(unknown.to_string()),
}
}
}