1 2 3 4 5 6 7 8 9 10 11 12
use core::any::*; use test::{black_box, Bencher}; #[bench] fn bench_downcast_ref(b: &mut Bencher) { b.iter(|| { let mut x = 0; let mut y = &mut x as &mut dyn Any; black_box(&mut y); black_box(y.downcast_ref::<isize>() == Some(&0)); }); }