pub struct Mapper<'a, 'b> { /* private fields */ }
Expand description
Context for mapping ids from lowered
to a new FlatLowered
object.
Trait Implementations§
Source§impl<'a, 'b> Rebuilder for Mapper<'a, 'b>
impl<'a, 'b> Rebuilder for Mapper<'a, 'b>
Source§fn map_var_id(&mut self, orig_var_id: VariableId) -> VariableId
fn map_var_id(&mut self, orig_var_id: VariableId) -> VariableId
Maps a var id from the original lowering representation to the equivalent id in the new lowering representation. If the variable wasn’t assigned an id yet, a new id is assigned.
Source§fn map_block_id(&mut self, orig_block_id: BlockId) -> BlockId
fn map_block_id(&mut self, orig_block_id: BlockId) -> BlockId
Maps a block id from the original lowering representation to the equivalent id in the new lowering representation.
Source§fn map_location(&mut self, location: LocationId) -> LocationId
fn map_location(&mut self, location: LocationId) -> LocationId
Adds the inlining location to a location.
fn transform_end(&mut self, end: &mut FlatBlockEnd)
fn map_var_usage(&mut self, var_usage: VarUsage) -> VarUsage
fn transform_statement(&mut self, _statement: &mut Statement)
fn transform_remapping(&mut self, _remapping: &mut VarRemapping)
fn transform_block(&mut self, _block: &mut FlatBlock)
Auto Trait Implementations§
impl<'a, 'b> Freeze for Mapper<'a, 'b>
impl<'a, 'b> !RefUnwindSafe for Mapper<'a, 'b>
impl<'a, 'b> !Send for Mapper<'a, 'b>
impl<'a, 'b> !Sync for Mapper<'a, 'b>
impl<'a, 'b> Unpin for Mapper<'a, 'b>
impl<'a, 'b> !UnwindSafe for Mapper<'a, 'b>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> RebuilderEx for Twhere
T: Rebuilder,
impl<T> RebuilderEx for Twhere
T: Rebuilder,
Source§fn rebuild_statement(&mut self, statement: &Statement) -> Statement
fn rebuild_statement(&mut self, statement: &Statement) -> Statement
Rebuilds the statement with renamed var and block ids.
Source§fn rebuild_remapping(&mut self, remapping: &VarRemapping) -> VarRemapping
fn rebuild_remapping(&mut self, remapping: &VarRemapping) -> VarRemapping
Apply map_var_id to all the variable in the
remapping
.Source§fn rebuild_end(&mut self, end: &FlatBlockEnd) -> FlatBlockEnd
fn rebuild_end(&mut self, end: &FlatBlockEnd) -> FlatBlockEnd
Rebuilds the block end with renamed var and block ids.
Source§fn rebuild_block(&mut self, block: &FlatBlock) -> FlatBlock
fn rebuild_block(&mut self, block: &FlatBlock) -> FlatBlock
Rebuilds the block with renamed var and block ids.