(coverage: &CodeCoverage, deopt: &Deopt)
| 46 | } |
| 47 | |
| 48 | pub fn from_coverage(coverage: &CodeCoverage, deopt: &Deopt) -> Self { |
| 49 | let mut observer = Observer::new(deopt); |
| 50 | let new_branches = observer.has_new_branch(coverage); |
| 51 | if !new_branches.is_empty() { |
| 52 | observer.merge_new_branch(&new_branches); |
| 53 | } |
| 54 | observer |
| 55 | } |
| 56 | |
| 57 | pub fn add_program_to_adg(&mut self, program_path: &Path) -> Result<()> { |
| 58 | let ast = crate::execution::Executor::extract_ast(program_path, vec![], &self.deopt)?; |
nothing calls this directly
no test coverage detected