Struct rustc_mir_build::build::scope::Scopes [−][src]
pub struct Scopes<'tcx> {
scopes: Vec<Scope>,
breakable_scopes: Vec<BreakableScope<'tcx>>,
unwind_drops: DropTree,
generator_drops: DropTree,
}Fields
scopes: Vec<Scope>breakable_scopes: Vec<BreakableScope<'tcx>>Expand description
The current set of breakable scopes. See module comment for more details.
unwind_drops: DropTreeExpand description
Drops that need to be done on unwind paths. See the comment on DropTree for more details.
generator_drops: DropTreeExpand description
Drops that need to be done on paths to the GeneratorDrop terminator.
Implementations
impl<'tcx> Scopes<'tcx>[src]
impl<'tcx> Scopes<'tcx>[src]pub(crate) fn new() -> Self[src]
fn push_scope(
&mut self,
region_scope: (Scope, SourceInfo),
vis_scope: SourceScope
)[src]
&mut self,
region_scope: (Scope, SourceInfo),
vis_scope: SourceScope
)
fn pop_scope(&mut self, region_scope: (Scope, SourceInfo)) -> Scope[src]
fn scope_index(&self, region_scope: Scope, span: Span) -> usize[src]
Trait Implementations
Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for Scopes<'tcx>
impl<'tcx> !Send for Scopes<'tcx>
impl<'tcx> !Sync for Scopes<'tcx>
impl<'tcx> Unpin for Scopes<'tcx>
impl<'tcx> !UnwindSafe for Scopes<'tcx>
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,