Skip to main content

igdb_rs/model/
enums.rs

1use serde_repr::Deserialize_repr;
2
3#[derive(Deserialize_repr, Debug, Clone)]
4#[repr(u8)]
5pub enum GameCategory {
6    MainGame = 0,
7    DlcAddon = 1,
8    Expansion = 2,
9    Bundle = 3,
10    StandaloneExpansion = 4,
11}
12
13impl Default for GameCategory {
14    fn default() -> Self {
15        GameCategory::MainGame
16    }
17}
18
19#[derive(Deserialize_repr, Debug, Clone)]
20#[repr(u8)]
21pub enum PlatformCategory {
22    Console = 1,
23    Arcade = 2,
24    Platform = 3,
25    OperativeSystem = 4,
26    PortableConsole = 5,
27    Computer = 6,
28}
29
30impl Default for PlatformCategory {
31    fn default() -> Self {
32        PlatformCategory::Console
33    }
34}
35
36#[derive(Deserialize_repr, Debug, Clone)]
37#[repr(u8)]
38pub enum Gender {
39    Unknown = 0,
40    Male = 1,
41    Female = 2,
42    Other = 3,
43}
44
45impl Default for Gender {
46    fn default() -> Self {
47        Gender::Unknown
48    }
49}
50
51#[derive(Deserialize_repr, Debug, Clone)]
52#[repr(u8)]
53pub enum Platform {
54    Console = 1,
55    Arcade = 2,
56    Platform = 3,
57    OperativeSystem = 4,
58    PortableConsole = 5,
59    Computer = 6,
60}
61
62impl Default for Platform {
63    fn default() -> Self {
64        Platform::Console
65    }
66}
67
68#[derive(Deserialize_repr, Debug, Clone)]
69#[repr(u8)]
70pub enum Rating {
71    Three = 1,
72    Seven = 2,
73    Twelve = 3,
74    Sixteen = 4,
75    Eighteen = 5,
76    RP = 6,
77    EC = 7,
78    E = 8,
79    E10 = 9,
80    T = 10,
81    M = 11,
82    AO = 12,
83}
84
85#[derive(Deserialize_repr, Debug, Clone)]
86#[repr(u8)]
87pub enum RatingCategory {
88    ESRB = 1,
89    PEGI = 2,
90}
91
92impl Default for RatingCategory {
93    fn default() -> Self {
94        RatingCategory::ESRB
95    }
96}
97
98impl Default for Rating {
99    fn default() -> Self {
100        Rating::Eighteen
101    }
102}
103
104#[derive(Deserialize_repr, Debug, Clone)]
105#[repr(u8)]
106pub enum Species {
107    Human = 1,
108    Alien = 2,
109    Animal = 3,
110    Android = 4,
111    Unknown = 5,
112}
113
114impl Default for Species {
115    fn default() -> Self {
116        Species::Human
117    }
118}
119
120#[derive(Deserialize_repr, Debug, Clone)]
121#[repr(u8)]
122pub enum Status {
123    Released = 0,
124    Alpha = 2,
125    Beta = 3,
126    EarlyAccess = 4,
127    Offline = 5,
128    Cancelled = 6,
129}
130
131impl Default for Status {
132    fn default() -> Self {
133        Status::Released
134    }
135}
136
137#[derive(Deserialize_repr, Debug, Clone)]
138#[repr(u8)]
139pub enum Region {
140    Europe = 1,
141    NorthAmerica = 2,
142    Australia = 3,
143    NewZealand = 4,
144    Japan = 5,
145    China = 6,
146    Asia = 7,
147    WorldWide = 8,
148}
149
150impl Default for Region {
151    fn default() -> Self {
152        Region::Europe
153    }
154}