box-o-sand/rustbyexample/hello.d/print.d/print_display.d/testcase_list.rs

26 lines
495 B
Rust

use std::fmt;
struct List(Vec<i32>);
impl fmt::Display for List {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
let vec = &self.0;
write!(f, "[")?;
for (count, v) in vec.iter().enumerate() {
if count != 0 {
write!(f, ", ")?;
}
write!(f, "{}: {}", count, v)?;
}
write!(f, "]")
}
}
fn main() {
let v = List(vec![6, 0, 6, 8, 0, 8, 9, 1, 1, 1, 3, 1, 2]);
println!("{}", v);
}