Coverage Report

Created: 2025-11-16 06:13

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/rust/registry/src/index.crates.io-1949cf8c6b5b557f/hashbrown-0.16.0/src/util.rs
Line
Count
Source
1
// FIXME: Replace with `core::hint::{likely, unlikely}` once they are stable.
2
#[cfg(feature = "nightly")]
3
pub(crate) use core::intrinsics::{likely, unlikely};
4
5
#[cfg(not(feature = "nightly"))]
6
#[inline(always)]
7
#[cold]
8
178k
fn cold_path() {}
9
10
#[cfg(not(feature = "nightly"))]
11
#[inline(always)]
12
4.17M
pub(crate) fn likely(b: bool) -> bool {
13
4.17M
    if b {
14
4.02M
        true
15
    } else {
16
146k
        cold_path();
17
146k
        false
18
    }
19
4.17M
}
20
21
#[cfg(not(feature = "nightly"))]
22
#[inline(always)]
23
1.69M
pub(crate) fn unlikely(b: bool) -> bool {
24
1.69M
    if b {
25
32.1k
        cold_path();
26
32.1k
        true
27
    } else {
28
1.65M
        false
29
    }
30
1.69M
}
31
32
// FIXME: use strict provenance functions once they are stable.
33
// Implement it with a transmute for now.
34
#[inline(always)]
35
#[allow(clippy::useless_transmute)] // clippy is wrong, cast and transmute are different here
36
0
pub(crate) fn invalid_mut<T>(addr: usize) -> *mut T {
37
0
    unsafe { core::mem::transmute(addr) }
38
0
}