Skip to main content Module mir Copy item path Source use std::iter ; ๐ use std::mem ; ๐ use rustc_data_structures::either::Either ; ๐ use rustc_hir::Expr; ๐ use rustc_hir::HirId; ๐ use rustc_index::IndexVec; ๐ use rustc_index::bit_set::DenseBitSet; ๐ use rustc_middle::mir::visit::MutatingUseContext; ๐ use rustc_middle::mir::visit::NonMutatingUseContext; ๐ use rustc_middle::mir::visit::PlaceContext; ๐ use rustc_middle::mir::visit::Visitor; ๐ use rustc_middle::mir::BasicBlock; ๐ use rustc_middle::mir::BasicBlockData; ๐ use rustc_middle::mir::Body; ๐ use rustc_middle::mir::InlineAsmOperand; ๐ use rustc_middle::mir::Local; ๐ use rustc_middle::mir::Location; ๐ use rustc_middle::mir::Place; ๐ use rustc_middle::mir::START_BLOCK; ๐ use rustc_middle::mir::StatementKind; ๐ use rustc_middle::mir::TerminatorKind; ๐ use rustc_middle::ty::TyCtxt; ๐ pub use possible_borrower::PossibleBorrowerMap ;possible_borrower ๐ possible_origin ๐ transitive_relation ๐ LocalUsage V ๐ block_in_cycle Checks if the block is part of a cycle enclosing_mir Returns the mir::Body containing the node associated with hir_id. expr_local Tries to determine the Local corresponding to expr, if any.
This function is expensive and should be used sparingly. function_call_basic_block Returns the basic block that is terminated with this function call. is_local_assignment ๐ local_assignments Returns a vector of mir::Location where local is assigned. reachable_while_storage_live ๐ Starting from the specified location, determines which blocks may be entered while any of the
locals are still live. used_exactly_once Convenience wrapper around visit_local_usage. visit_local_usage Collects usage locations (reads, consumes or mutations) for the set of the locals across blocks where their storage
remains live relative to the location specified.