crap4rust/coverage_io/coverage_record.rs
1// Copyright 2026 Umberto Gotti <umberto.gotti@umbertogotti.dev>
2// Licensed under the MIT License
3// SPDX-License-Identifier: MIT
4
5#[derive(Debug, Clone)]
6pub struct CoverageRecord {
7 pub path_key: String,
8 pub line: usize,
9 pub covered_regions: u32,
10 pub total_regions: u32,
11}
12
13impl CoverageRecord {
14 pub fn coverage_ratio(&self) -> f64 {
15 if self.total_regions == 0 {
16 0.0
17 } else {
18 let covered: f64 = self.covered_regions.into();
19 let total: f64 = self.total_regions.into();
20 covered / total
21 }
22 }
23}