Skip to main content

Module mir

Module mir 

Source

Re-exportsยง

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;

Modulesยง

possible_borrower ๐Ÿ”’
possible_origin ๐Ÿ”’
transitive_relation ๐Ÿ”’

Structsยง

LocalUsage
V ๐Ÿ”’

Functionsยง

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.