Module rustc_mir::dataflow [−][src]
🔬 This is a nightly-only experimental API. (rustc_private)
this crate is being loaded from the sysroot, an unstable location; did you mean to load this crate from crates.io via Cargo.toml instead?
Re-exports
use syntax::ast; |
use syntax::ast::MetaItem; |
use rustc_data_structures::indexed_set::IdxSet; |
use rustc_data_structures::indexed_set::IdxSetBuf; |
use rustc_data_structures::indexed_vec::Idx; |
use rustc_data_structures::bitslice::bitwise; |
use rustc_data_structures::bitslice::BitwiseOperator; |
use rustc::ty; |
use rustc::ty::TyCtxt; |
use rustc::mir; |
use rustc::mir::Mir; |
use rustc::mir::BasicBlock; |
use rustc::mir::BasicBlockData; |
use rustc::mir::Location; |
use rustc::mir::Statement; |
use rustc::mir::Terminator; |
use rustc::session::Session; |
use std::borrow::Borrow; |
use std::fmt; |
use std::io; |
use std::mem; |
use std::path::PathBuf; |
use std::usize; |
pub use self::impls::MaybeStorageLive; |
pub use self::impls::MaybeInitializedPlaces; |
pub use self::impls::MaybeUninitializedPlaces; |
pub use self::impls::DefinitelyInitializedPlaces; |
pub use self::impls::MovingOutStatements; |
pub use self::impls::EverInitializedPlaces; |
pub use self::impls::borrows::Borrows; |
pub use self::impls::HaveBeenBorrowedLocals; |
pub use self::at_location::FlowAtLocation; |
pub use self::at_location::FlowsAtLocation; |
use self::drop_flag_effects::*; |
use self::move_paths::MoveData; |
use self::move_paths::indexes; |
Modules
| at_location |
[ Experimental ] A nice wrapper to consume dataflow results at several CFG locations. |
| drop_flag_effects |
[ Experimental ]
|
| graphviz |
[ Experimental ] Hook into libgraphviz for rendering dataflow graphs for MIR. |
| impls |
[ Experimental ] Dataflow analyses are built upon some interpretation of the bitvectors attached to each basic block, represented via a zero-sized structure. |
| move_paths |
[ Experimental ]
|
Structs
| AllSets |
[ Experimental ]
|
| Bits |
[ Experimental ] Maps each block to a set of bits |
| BlockSets |
[ Experimental ] Triple of sets associated with a given block. |
| DataflowAnalysis |
[ Experimental ]
|
| DataflowBuilder |
[ Experimental ]
|
| DataflowResults |
[ Experimental ]
|
| DataflowState |
[ Experimental ] State of a dataflow analysis; couples a collection of bit sets with operator used to initialize and merge bits during analysis. |
| DebugFormatted |
[ Experimental ]
|
| MoveDataParamEnv |
[ Experimental ]
|
| PropagationContext |
[ Experimental ]
|
Traits
| BitDenotation |
[ Experimental ]
|
| Dataflow |
[ Experimental ]
|
| DataflowResultsConsumer |
[ Experimental ] DataflowResultsConsumer abstracts over walking the MIR with some already constructed dataflow results. |
| InitialFlow |
[ Experimental ] Parameterization for the precise form of data flow that is used.
|
Functions
| dataflow_path |
[ Experimental ]
|
| do_dataflow |
[ Experimental ]
|
| has_rustc_mir_with |
[ Experimental ]
|
| state_for_location |
[ Experimental ]
|