(program: usize, deopt: &Deopt)
| 215 | } |
| 216 | |
| 217 | pub fn compute_coverage_for_program(program: usize, deopt: &Deopt) -> Result<f32> { |
| 218 | let mut observer = Observer::new(deopt); |
| 219 | let coverage = deopt.get_seed_coverage(program)?; |
| 220 | let new_branches = observer.has_new_branch(&coverage); |
| 221 | if !new_branches.is_empty() { |
| 222 | observer.merge_new_branch(&new_branches); |
| 223 | } |
| 224 | let (covered_branch, total_branch) = observer.branches.compute_branch_coverage(); |
| 225 | let cover_rate: f32 = covered_branch as f32 / total_branch as f32; |
| 226 | Ok(cover_rate) |
| 227 | } |
| 228 | |
| 229 | pub fn sync_from_previous(deopt: &mut Deopt) -> Result<Self> { |
| 230 | let mut observer = Observer::new(deopt); |
nothing calls this directly
no test coverage detected