Skip to main content

subtr_actor/stats/export/
kickoff.rs

1use crate::*;
2
3use super::*;
4
5impl StatFieldProvider for KickoffStats {
6    fn visit_stat_fields(&self, visitor: &mut dyn FnMut(ExportedStat)) {
7        visitor(ExportedStat::unsigned(
8            "kickoff",
9            "count",
10            StatUnit::Count,
11            self.count,
12        ));
13        visitor(ExportedStat::unsigned(
14            "kickoff",
15            "team_zero_wins",
16            StatUnit::Count,
17            self.team_zero_wins,
18        ));
19        visitor(ExportedStat::unsigned(
20            "kickoff",
21            "team_one_wins",
22            StatUnit::Count,
23            self.team_one_wins,
24        ));
25        visitor(ExportedStat::unsigned(
26            "kickoff",
27            "neutral_outcomes",
28            StatUnit::Count,
29            self.neutral_outcomes,
30        ));
31        visitor(ExportedStat::unsigned(
32            "kickoff",
33            "team_zero_kickoff_possessions",
34            StatUnit::Count,
35            self.team_zero_kickoff_possessions,
36        ));
37        visitor(ExportedStat::unsigned(
38            "kickoff",
39            "team_one_kickoff_possessions",
40            StatUnit::Count,
41            self.team_one_kickoff_possessions,
42        ));
43        visitor(ExportedStat::unsigned(
44            "kickoff",
45            "team_zero_kickoff_possession_advantages",
46            StatUnit::Count,
47            self.team_zero_kickoff_possession_advantages,
48        ));
49        visitor(ExportedStat::unsigned(
50            "kickoff",
51            "team_one_kickoff_possession_advantages",
52            StatUnit::Count,
53            self.team_one_kickoff_possession_advantages,
54        ));
55        visitor(ExportedStat::unsigned(
56            "kickoff",
57            "contested_kickoff_possessions",
58            StatUnit::Count,
59            self.contested_kickoff_possessions,
60        ));
61        visitor(ExportedStat::unsigned(
62            "kickoff",
63            "kickoff_goal_count",
64            StatUnit::Count,
65            self.kickoff_goal_count,
66        ));
67        visitor(ExportedStat::unsigned(
68            "kickoff",
69            "team_zero_kickoff_goals",
70            StatUnit::Count,
71            self.team_zero_kickoff_goals,
72        ));
73        visitor(ExportedStat::unsigned(
74            "kickoff",
75            "team_one_kickoff_goals",
76            StatUnit::Count,
77            self.team_one_kickoff_goals,
78        ));
79        visitor(ExportedStat::float(
80            "kickoff",
81            "average_win_strength",
82            StatUnit::Count,
83            self.average_win_strength(),
84        ));
85        visitor(ExportedStat::unsigned(
86            "kickoff",
87            "boost_after_sample_count",
88            StatUnit::Count,
89            self.boost_after_sample_count,
90        ));
91        visitor(ExportedStat::float(
92            "kickoff",
93            "average_boost_after",
94            StatUnit::Boost,
95            self.average_boost_after(),
96        ));
97        visitor(ExportedStat::unsigned(
98            "kickoff",
99            "fake_count",
100            StatUnit::Count,
101            self.fake_count,
102        ));
103        visitor(ExportedStat::unsigned(
104            "kickoff",
105            "missed_count",
106            StatUnit::Count,
107            self.missed_count,
108        ));
109        for entry in self.complete_labeled_event_counts().entries {
110            visitor(ExportedStat::unsigned_labeled(
111                "kickoff",
112                "count",
113                StatUnit::Count,
114                entry.labels,
115                entry.count,
116            ));
117        }
118        for entry in self.complete_labeled_player_counts().entries {
119            visitor(ExportedStat::unsigned_labeled(
120                "kickoff",
121                "player_count",
122                StatUnit::Count,
123                entry.labels,
124                entry.count,
125            ));
126        }
127    }
128}
129
130impl StatFieldProvider for KickoffPlayerStats {
131    fn visit_stat_fields(&self, visitor: &mut dyn FnMut(ExportedStat)) {
132        visitor(ExportedStat::unsigned(
133            "kickoff",
134            "count",
135            StatUnit::Count,
136            self.count,
137        ));
138        visitor(ExportedStat::unsigned(
139            "kickoff",
140            "touches",
141            StatUnit::Count,
142            self.touches,
143        ));
144        visitor(ExportedStat::unsigned(
145            "kickoff",
146            "fakes",
147            StatUnit::Count,
148            self.fakes,
149        ));
150        visitor(ExportedStat::unsigned(
151            "kickoff",
152            "misses",
153            StatUnit::Count,
154            self.misses,
155        ));
156        visitor(ExportedStat::unsigned(
157            "kickoff",
158            "support_go_for_boosts",
159            StatUnit::Count,
160            self.support_go_for_boosts,
161        ));
162        visitor(ExportedStat::unsigned(
163            "kickoff",
164            "support_cheats",
165            StatUnit::Count,
166            self.support_cheats,
167        ));
168        visitor(ExportedStat::unsigned(
169            "kickoff",
170            "support_other",
171            StatUnit::Count,
172            self.support_other,
173        ));
174        visitor(ExportedStat::unsigned(
175            "kickoff",
176            "kickoff_goal_count",
177            StatUnit::Count,
178            self.kickoff_goal_count,
179        ));
180        visitor(ExportedStat::float(
181            "kickoff",
182            "average_boost_after",
183            StatUnit::Boost,
184            self.average_boost_after(),
185        ));
186    }
187}