(
state: &mut FrameState,
local: u16,
value: FrameValue,
context: &str,
instruction_index: usize,
)
| 1010 | let mut starts = BTreeSet::from([0usize]); |
| 1011 | for target in branch_targets(instructions) { |
| 1012 | if usize::from(target) < instructions.len() { |
| 1013 | starts.insert(usize::from(target)); |
| 1014 | } |
| 1015 | } |
| 1016 | for entry in exception_table { |
| 1017 | for boundary in [entry.range_pc.start, entry.range_pc.end, entry.handler_pc] { |
| 1018 | if usize::from(boundary) < instructions.len() { |
| 1019 | starts.insert(usize::from(boundary)); |
| 1020 | } |
| 1021 | } |
| 1022 | } |
| 1023 | for (index, instruction) in instructions.iter().enumerate() { |
| 1024 | if instruction_ends_block(instruction) && index + 1 < instructions.len() { |
| 1025 | starts.insert(index + 1); |
no test coverage detected