Struct rustc_mir_transform::const_goto::ConstGotoOptimizationFinder [−][src]
pub struct ConstGotoOptimizationFinder<'a, 'tcx> {
tcx: TyCtxt<'tcx>,
body: &'a Body<'tcx>,
param_env: ParamEnv<'tcx>,
optimizations: Vec<OptimizationToApply>,
}Fields
tcx: TyCtxt<'tcx>body: &'a Body<'tcx>param_env: ParamEnv<'tcx>optimizations: Vec<OptimizationToApply>Trait Implementations
fn visit_ascribe_user_ty(
&mut self,
place: &Place,
variance: &Variance,
user_ty: &UserTypeProjection,
location: Location
)
fn visit_projection(
&mut self,
place_ref: PlaceRef,
context: PlaceContext,
location: Location
)
fn visit_projection_elem(
&mut self,
local: Local,
proj_base: &[ProjectionElem<Local, &TyS>],
elem: ProjectionElem<Local, &TyS>,
context: PlaceContext,
location: Location
)
fn super_projection(
&mut self,
place_ref: PlaceRef,
context: PlaceContext,
location: Location
)
fn super_projection_elem(
&mut self,
_local: Local,
_proj_base: &[ProjectionElem<Local, &TyS>],
elem: ProjectionElem<Local, &TyS>,
_context: PlaceContext,
location: Location
)
fn visit_user_type_annotation(
&mut self,
index: UserTypeAnnotationIndex,
ty: &CanonicalUserTypeAnnotation
)
fn super_ascribe_user_ty(
&mut self,
place: &Place,
_variance: &Variance,
user_ty: &UserTypeProjection,
location: Location
)
fn super_user_type_annotation(
&mut self,
_index: UserTypeAnnotationIndex,
ty: &CanonicalUserTypeAnnotation
)
Auto Trait Implementations
impl<'a, 'tcx> !RefUnwindSafe for ConstGotoOptimizationFinder
impl<'a, 'tcx> !Send for ConstGotoOptimizationFinder
impl<'a, 'tcx> !Sync for ConstGotoOptimizationFinder
impl<'a, 'tcx> Unpin for ConstGotoOptimizationFinder where
'tcx: 'a,
impl<'a, 'tcx> !UnwindSafe for ConstGotoOptimizationFinder
Blanket Implementations
Layout
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 48 bytes
