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}