Expand description
This file declares the ScopeTree type, which describes
the parent links in the region hierarchy.
For more information about how MIR-based region-checking works, see the rustc dev guide.
Re-exportsยง
use std::fmt;๐use rustc_data_structures::fx::FxIndexMap;๐use rustc_data_structures::unord::UnordMap;๐use rustc_hir as hir;๐use rustc_hir::HirId;๐use rustc_hir::ItemLocalMap;๐use rustc_hir::Node;๐use rustc_macros::StableHash;๐use rustc_macros::TyDecodable;๐use rustc_macros::TyEncodable;๐use rustc_span::DUMMY_SP;๐use rustc_span::Span;๐use rustc_span::span_bug;๐use tracing::debug;๐use crate::ty;๐use crate::ty::TyCtxt;๐
Structsยง
- First
Statement Index - Represents a subscope of
blockfor a binding that is introduced byblock.stmts[first_statement_index]. Such subscopes represent a suffix of the block. Note that each subscope does not include the initializer expression, if any, for the statement indexed byfirst_statement_index. - Scope
- Represents a statically-describable scope that can be used to bound the lifetime/region for values.
- Scope
Tree - The region scope tree encodes information about region relationships.
- Temp
Lifetime - Temporary lifetime information for expressions, used when lowering to MIR.