Re-exportsΒ§
use itertools::Itertools;πuse rustc_data_structures::fx::FxIndexMap;πuse rustc_data_structures::fx::FxIndexSet;πuse rustc_data_structures::fx::IndexEntry;πuse rustc_middle::mir;πuse rustc_middle::mir::coverage::BasicCoverageBlock;πuse rustc_middle::mir::coverage::BranchSpan;πuse rustc_span::ExpnKind;πuse rustc_span::Span;πuse rustc_span::SyntaxContext;πuse crate::coverage::from_mir;πuse crate::coverage::graph::CoverageGraph;πuse crate::coverage::hir_info::ExtractedHirInfo;πuse crate::coverage::mappings::MappingsError;π
StructsΒ§
- Expn
Node π - Expn
Tree π - MinMax
Bcbs π - Span
With πBcb
FunctionsΒ§
- build_
expn_ πtree - Extracts raw span/BCB pairs from potentially-different syntax contexts, and arranges them into an βexpansion treeβ based on their expansion call-sites.
- minmax_
bcbs_ πfor_ expn_ tree_ node - For a single node in the expansion tree, compute its βminimumβ and βmaximumβ BCBs (in dominator order), from among the BCBs of its immediate spans, and the min/max of its immediate children.
- sort_
nodes_ πdepth_ first - Sorts the tree nodes in the map into depth-first order.