1use std::fmt;
2
3pub(crate) struct CommaArray<I: Into<String> + Clone>(pub(crate) Vec<I>);
4
5impl<I: Into<String> + Clone> fmt::Display for CommaArray<I> {
6 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
7 write!(f, "[")?;
8
9 if self.0.len() > 0 {
10 let last = self.0.len() - 1;
11
12 for (i, item) in self.0.clone().into_iter().enumerate() {
13 let item: String = item.into();
14 write!(f, "{}", item)?;
15
16 if i != last {
17 write!(f, ", ")?;
18 }
19 }
20 }
21
22 write!(f, "]")
23 }
24}