pub struct CoverageReport {
pub files: BTreeMap<String, FileCoverage>,
}Expand description
A whole coverage report: repo-relative file path → FileCoverage.
Fields§
§files: BTreeMap<String, FileCoverage>Per-file coverage, keyed by repo-relative path.
Implementations§
Source§impl CoverageReport
impl CoverageReport
Sourcepub fn insert(&mut self, file: FileCoverage)
pub fn insert(&mut self, file: FileCoverage)
Inserts or merges a file’s coverage into the report.
If the path already exists, line hit counts are merged (taking the max per line), which keeps the model robust against reports that split one file across multiple records.
Sourcepub fn hits(&self, path: &str, line: u32) -> Option<u64>
pub fn hits(&self, path: &str, line: u32) -> Option<u64>
Hit count for path:line, or None when the line is not instrumented
(or the file is absent from the report).
Sourcepub fn total_lines(&self) -> u64
pub fn total_lines(&self) -> u64
Total executable lines across all files.
Sourcepub fn covered_lines(&self) -> u64
pub fn covered_lines(&self) -> u64
Total covered lines across all files.
Sourcepub fn percent(&self) -> Option<f64>
pub fn percent(&self) -> Option<f64>
Project-wide line coverage percentage, or None when there are no
executable lines.
Sourcepub fn strip_prefix(&mut self, prefix: &Path)
pub fn strip_prefix(&mut self, prefix: &Path)
Normalises every file path to be repo-relative.
Coverage tools usually emit absolute paths (lcov SF:, llvm-cov
filename). Stripping prefix mirrors the CI jq ltrimstr($ws) step so
the paths line up with the repo-relative paths git diffs report. Paths
that do not start with prefix are left unchanged (already relative, or
outside the tree). Leading ./ and / are also trimmed.
Trait Implementations§
Source§impl Clone for CoverageReport
impl Clone for CoverageReport
Source§fn clone(&self) -> CoverageReport
fn clone(&self) -> CoverageReport
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CoverageReport
impl Debug for CoverageReport
Source§impl Default for CoverageReport
impl Default for CoverageReport
Source§fn default() -> CoverageReport
fn default() -> CoverageReport
impl Eq for CoverageReport
Source§impl PartialEq for CoverageReport
impl PartialEq for CoverageReport
Source§fn eq(&self, other: &CoverageReport) -> bool
fn eq(&self, other: &CoverageReport) -> bool
self and other values to be equal, and is used by ==.impl StructuralPartialEq for CoverageReport
Auto Trait Implementations§
impl Freeze for CoverageReport
impl RefUnwindSafe for CoverageReport
impl Send for CoverageReport
impl Sync for CoverageReport
impl Unpin for CoverageReport
impl UnsafeUnpin for CoverageReport
impl UnwindSafe for CoverageReport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.