warframe_client/models/
element.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
16pub enum Element {
17 #[serde(rename = "impact")]
18 Impact,
19 #[serde(rename = "puncture")]
20 Puncture,
21 #[serde(rename = "slash")]
22 Slash,
23 #[serde(rename = "heat")]
24 Heat,
25 #[serde(rename = "cold")]
26 Cold,
27 #[serde(rename = "electric")]
28 Electric,
29 #[serde(rename = "toxin")]
30 Toxin,
31 #[serde(rename = "gas")]
32 Gas,
33 #[serde(rename = "viral")]
34 Viral,
35 #[serde(rename = "corrosive")]
36 Corrosive,
37 #[serde(rename = "blast")]
38 Blast,
39 #[serde(rename = "magnetic")]
40 Magnetic,
41 #[serde(rename = "radiation")]
42 Radiation,
43 #[serde(rename = "true")]
44 True,
45 #[serde(rename = "void")]
46 Void,
47
48}
49
50impl std::fmt::Display for Element {
51 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
52 match self {
53 Self::Impact => write!(f, "impact"),
54 Self::Puncture => write!(f, "puncture"),
55 Self::Slash => write!(f, "slash"),
56 Self::Heat => write!(f, "heat"),
57 Self::Cold => write!(f, "cold"),
58 Self::Electric => write!(f, "electric"),
59 Self::Toxin => write!(f, "toxin"),
60 Self::Gas => write!(f, "gas"),
61 Self::Viral => write!(f, "viral"),
62 Self::Corrosive => write!(f, "corrosive"),
63 Self::Blast => write!(f, "blast"),
64 Self::Magnetic => write!(f, "magnetic"),
65 Self::Radiation => write!(f, "radiation"),
66 Self::True => write!(f, "true"),
67 Self::Void => write!(f, "void"),
68 }
69 }
70}
71
72impl Default for Element {
73 fn default() -> Element {
74 Self::Impact
75 }
76}
77