space_traders/models/
ship_refine_request.rs1use serde::{Deserialize, Serialize};
6
7#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
9pub struct ShipRefineRequest {
10 #[serde(rename = "produce")]
12 pub produce: Produce,
13}
14
15impl ShipRefineRequest {
16 #[allow(clippy::too_many_arguments)]
18 pub fn new(produce: Produce) -> ShipRefineRequest {
19 ShipRefineRequest { produce }
20 }
21}
22
23#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
25pub enum Produce {
26 #[serde(rename = "IRON")]
27 Iron,
28 #[serde(rename = "COPPER")]
29 Copper,
30 #[serde(rename = "SILVER")]
31 Silver,
32 #[serde(rename = "GOLD")]
33 Gold,
34 #[serde(rename = "ALUMINUM")]
35 Aluminum,
36 #[serde(rename = "PLATINUM")]
37 Platinum,
38 #[serde(rename = "URANITE")]
39 Uranite,
40 #[serde(rename = "MERITIUM")]
41 Meritium,
42 #[serde(rename = "FUEL")]
43 Fuel,
44}
45
46impl Default for Produce {
47 fn default() -> Produce {
48 Self::Iron
49 }
50}