Module rustc::middle::expr_use_visitor [−][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?
A different sort of visitor for walking fn bodies. Unlike the
normal visitor, which just walks the entire body in one shot, the
ExprUseVisitor
determines how expressions are being used.
Re-exports
pub use self::LoanCause::*; |
pub use self::ConsumeMode::*; |
pub use self::MoveReason::*; |
pub use self::MatchMode::*; |
use self::TrackMatchMode::*; |
use self::OverloadedCallType::*; |
use hir::def::Def; |
use hir::def_id::DefId; |
use infer::InferCtxt; |
use middle::mem_categorization as mc; |
use middle::region; |
use ty; |
use ty::TyCtxt; |
use ty::adjustment; |
use hir; |
use hir::PatKind; |
use rustc_data_structures::sync::Lrc; |
use std::rc::Rc; |
use syntax::ast; |
use syntax::ptr::P; |
use syntax_pos::Span; |
use util::nodemap::ItemLocalSet; |
Structs
ExprUseVisitor |
[ Experimental ]
|
Enums
ConsumeMode |
[ Experimental ]
|
LoanCause |
[ Experimental ]
|
MatchMode |
[ Experimental ]
|
MoveReason |
[ Experimental ]
|
MutateMode |
[ Experimental ]
|
OverloadedCallType |
[ Experimental ]
|
TrackMatchMode |
[ Experimental ]
|
Traits
Delegate |
[ Experimental ] This trait defines the callbacks you can expect to receive when employing the ExprUseVisitor. |
Functions
copy_or_move |
[ Experimental ]
|