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
30
use super::Deserialize;
pub type Family = String;
pub type Major = String;
pub type Minor = String;
pub type Patch = String;
pub type PatchMinor = String;
#[derive(Clone, Debug, Deserialize, Eq, Hash, PartialEq)]
pub struct OS {
pub family: Family,
pub major: Option<Major>,
pub minor: Option<Minor>,
pub patch: Option<Patch>,
pub patch_minor: Option<PatchMinor>,
}
impl Default for OS {
fn default() -> OS {
OS {
family: "Other".to_string(),
major: None,
minor: None,
patch: None,
patch_minor: None,
}
}
}