inner_items.main - Coverage Spans

@0,1,2,3⦊fn main() ⦉@0,1,2,3{ // Initialize test constants in a way that cannot be determined at compile time, to ensure // rustc and LLVM cannot optimize out statements (or coverage counters) downstream from // dependent conditions. let @0,1,2,3⦊is_true = std::env::args().len() == 1; let mut countdown = 0; if is_true⦉@0,1,2,3 @4⦊{ countdown = 10; }⦉@4@5⦊‸⦉@5 mod in_mod { const IN_MOD_CONST: u32 = 1000; } fn in_func(a: u32) { let b = 1; let c = a + b; println!("c = {}", c) } struct InStruct { in_struct_field: u32, } const IN_CONST: u32 = 1234; trait InTrait { fn trait_func(&mut self, incr: u32); fn default_trait_func(&mut self) { in_func(IN_CONST); self.trait_func(IN_CONST); } } impl InTrait for InStruct { fn trait_func(&mut self, incr: u32) { self.in_struct_field += incr; in_func(self.in_struct_field); } } type InType = String; if @6⦊is_true⦉@6 @7,9⦊{ in_func(countdown); }⦉@7,9@8⦊‸⦉@8 let @10,11⦊mut val = InStruct { in_struct_field: 101, }; val.default_trait_func(); }⦉@10,11