mod cfg;
mod dataflow;
mod graph;
mod storage;
#[cfg(test)]
mod tests;
pub use cfg::{
BasicBlock, BlockKind, BlockRef, Cfg, CfgEdge, CfgGraph, EdgeKind, EdgeRef, InstrRange,
};
pub(crate) use dataflow::ValueFactsStorage;
pub use dataflow::{
DataflowFacts, Def, DefId, EffectTag, InstrEffect, InstrReachingDefs, InstrReachingValues,
InstrUseDefs, InstrUseValues, OpenDef, OpenDefId, OpenUseSite, PhiCandidate, PhiId,
PhiIncoming, SideEffectSummary, SsaValue, UseSite, ValueMapRef, ValueSetRef,
};
pub use graph::{DominatorTree, GraphFacts, NaturalLoop, PostDominatorTree};
pub use storage::{CompactSet, RegValueMap};