1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
// build-pass trait Foo {} struct Bar { bytes: &'static [u8], func: fn(&Box<dyn Foo>), } fn example(_: &Box<dyn Foo>) {} const BARS: &[Bar] = &[ Bar { bytes: "0".as_bytes(), func: example, }, Bar { bytes: "0".as_bytes(), func: example, }, ]; fn main() { let x = todo!(); for bar in BARS { (bar.func)(&x); } }