1use crate::EguiProbe;
2
3impl<T, const N: usize> EguiProbe for [T; N]
4where
5 T: EguiProbe,
6{
7 fn probe(&mut self, ui: &mut egui::Ui, _style: &crate::Style) -> egui::Response {
8 ui.weak(format!("[{N}]"))
9 }
10
11 fn iterate_inner(
12 &mut self,
13 ui: &mut egui::Ui,
14 f: &mut dyn FnMut(&str, &mut egui::Ui, &mut dyn EguiProbe),
15 ) {
16 for (i, value) in self.iter_mut().enumerate() {
17 f(&format!("[{i}]"), ui, value);
18 }
19 }
20}
21
22impl<T> EguiProbe for [T]
23where
24 T: EguiProbe,
25{
26 fn probe(&mut self, ui: &mut egui::Ui, _style: &crate::Style) -> egui::Response {
27 ui.weak(format!("[{}]", self.len()))
28 }
29
30 fn iterate_inner(
31 &mut self,
32 ui: &mut egui::Ui,
33 f: &mut dyn FnMut(&str, &mut egui::Ui, &mut dyn EguiProbe),
34 ) {
35 for (i, value) in self.iter_mut().enumerate() {
36 f(&format!("[{i}]"), ui, value);
37 }
38 }
39}