tba_openapi_rust/models/
model_match.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
15pub struct Match {
16 #[serde(rename = "key")]
18 pub key: String,
19 #[serde(rename = "comp_level")]
21 pub comp_level: CompLevel,
22 #[serde(rename = "set_number")]
24 pub set_number: i32,
25 #[serde(rename = "match_number")]
27 pub match_number: i32,
28 #[serde(rename = "alliances", skip_serializing_if = "Option::is_none")]
29 pub alliances: Option<Box<crate::models::MatchSimpleAlliances>>,
30 #[serde(rename = "winning_alliance", skip_serializing_if = "Option::is_none")]
32 pub winning_alliance: Option<WinningAlliance>,
33 #[serde(rename = "event_key")]
35 pub event_key: String,
36 #[serde(rename = "time", skip_serializing_if = "Option::is_none")]
38 pub time: Option<i64>,
39 #[serde(rename = "actual_time", skip_serializing_if = "Option::is_none")]
41 pub actual_time: Option<i64>,
42 #[serde(rename = "predicted_time", skip_serializing_if = "Option::is_none")]
44 pub predicted_time: Option<i64>,
45 #[serde(rename = "post_result_time", skip_serializing_if = "Option::is_none")]
47 pub post_result_time: Option<i64>,
48 #[serde(rename = "score_breakdown", skip_serializing_if = "Option::is_none")]
50 pub score_breakdown: Option<serde_json::Value>,
51 #[serde(rename = "videos", skip_serializing_if = "Option::is_none")]
53 pub videos: Option<Vec<crate::models::MatchVideosInner>>,
54}
55
56impl Match {
57 pub fn new(key: String, comp_level: CompLevel, set_number: i32, match_number: i32, event_key: String) -> Match {
58 Match {
59 key,
60 comp_level,
61 set_number,
62 match_number,
63 alliances: None,
64 winning_alliance: None,
65 event_key,
66 time: None,
67 actual_time: None,
68 predicted_time: None,
69 post_result_time: None,
70 score_breakdown: None,
71 videos: None,
72 }
73 }
74}
75
76#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
78pub enum CompLevel {
79 #[serde(rename = "qm")]
80 Qm,
81 #[serde(rename = "ef")]
82 Ef,
83 #[serde(rename = "qf")]
84 Qf,
85 #[serde(rename = "sf")]
86 Sf,
87 #[serde(rename = "f")]
88 F,
89}
90
91impl Default for CompLevel {
92 fn default() -> CompLevel {
93 Self::Qm
94 }
95}
96#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
98pub enum WinningAlliance {
99 #[serde(rename = "red")]
100 Red,
101 #[serde(rename = "blue")]
102 Blue,
103 #[serde(rename = "")]
104 Empty,
105}
106
107impl Default for WinningAlliance {
108 fn default() -> WinningAlliance {
109 Self::Red
110 }
111}
112