Module rustc::middle::region [−][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?
This file builds up the ScopeTree, which describes
the parent links in the region hierarchy.
For more information about how MIR-based region-checking works, see the rustc guide.
Re-exports
use ich::StableHashingContext; |
use ich::NodeIdHashingMode; |
use util::nodemap::FxHashMap; |
use util::nodemap::FxHashSet; |
use ty; |
use std::fmt; |
use std::mem; |
use rustc_data_structures::small_vec::SmallVec; |
use rustc_data_structures::sync::Lrc; |
use syntax::codemap; |
use syntax::ast; |
use syntax_pos::Span; |
use syntax_pos::DUMMY_SP; |
use ty::TyCtxt; |
use ty::maps::Providers; |
use hir; |
use hir::def_id::DefId; |
use hir::intravisit; |
use hir::intravisit::Visitor; |
use hir::intravisit::NestedVisitorMap; |
use hir::Block; |
use hir::Arm; |
use hir::Pat; |
use hir::PatKind; |
use hir::Stmt; |
use hir::Expr; |
use hir::Local; |
use rustc_data_structures::indexed_vec::Idx; |
use rustc_data_structures::stable_hasher::HashStable; |
use rustc_data_structures::stable_hasher::StableHasher; |
use rustc_data_structures::stable_hasher::StableHasherResult; |
Structs
| BlockRemainder |
[ Experimental ] Represents a subscope of |
| Context |
[ Experimental ]
|
| ExprLocatorVisitor |
[ Experimental ]
|
| FirstStatementIndex |
[ Experimental ]
|
| RegionResolutionVisitor |
[ Experimental ]
|
| Scope |
[ Experimental ] Scope represents a statically-describable scope that can be used to bound the lifetime/region for values. |
| ScopeTree |
[ Experimental ] The region scope tree encodes information about region relationships. |
Enums
| ScopeData |
[ Experimental ]
|
Constants
| SCOPE_DATA_ARGUMENTS |
[ Experimental ]
|
| SCOPE_DATA_CALLSITE |
[ Experimental ]
|
| SCOPE_DATA_DESTRUCTION |
[ Experimental ]
|
| SCOPE_DATA_NODE |
[ Experimental ]
|
| SCOPE_DATA_REMAINDER_MAX |
[ Experimental ]
|
Functions
| provide |
[ Experimental ]
|
| record_var_lifetime |
[ Experimental ] Records the lifetime of a local variable as |
| region_scope_tree |
[ Experimental ]
|
| resolve_arm |
[ Experimental ]
|
| resolve_block |
[ Experimental ]
|
| resolve_expr |
[ Experimental ]
|
| resolve_local |
[ Experimental ]
|
| resolve_pat |
[ Experimental ]
|
| resolve_stmt |
[ Experimental ]
|