pub struct CrateCoverageContext<'ll, 'tcx> {
pub(crate) function_coverage_map: RefCell<FxHashMap<Instance<'tcx>, FunctionCoverage<'tcx>>>,
pub(crate) pgo_func_name_var_map: RefCell<FxHashMap<Instance<'tcx>, &'ll Value>>,
}
Expand description
A context object for maintaining all state needed by the coverageinfo module.
Fields§
§function_coverage_map: RefCell<FxHashMap<Instance<'tcx>, FunctionCoverage<'tcx>>>
Coverage data for each instrumented function identified by DefId.
pgo_func_name_var_map: RefCell<FxHashMap<Instance<'tcx>, &'ll Value>>
Implementations§
source§impl<'ll, 'tcx> CrateCoverageContext<'ll, 'tcx>
impl<'ll, 'tcx> CrateCoverageContext<'ll, 'tcx>
pub fn new() -> Self
pub fn take_function_coverage_map(
&self
) -> FxHashMap<Instance<'tcx>, FunctionCoverage<'tcx>>
Auto Trait Implementations§
impl<'ll, 'tcx> !RefUnwindSafe for CrateCoverageContext<'ll, 'tcx>
impl<'ll, 'tcx> !Send for CrateCoverageContext<'ll, 'tcx>
impl<'ll, 'tcx> !Sync for CrateCoverageContext<'ll, 'tcx>
impl<'ll, 'tcx> Unpin for CrateCoverageContext<'ll, 'tcx>
impl<'ll, 'tcx> !UnwindSafe for CrateCoverageContext<'ll, 'tcx>
Blanket Implementations§
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 80 bytes