Trait rustc_mir_dataflow::framework::visitor::ResultsVisitor
source · pub trait ResultsVisitor<'mir, 'tcx, R> {
type FlowState;
// Provided methods
fn visit_block_start(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_block_data: &'mir BasicBlockData<'tcx>,
_block: BasicBlock
) { ... }
fn visit_statement_before_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_statement: &'mir Statement<'tcx>,
_location: Location
) { ... }
fn visit_statement_after_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_statement: &'mir Statement<'tcx>,
_location: Location
) { ... }
fn visit_terminator_before_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_terminator: &'mir Terminator<'tcx>,
_location: Location
) { ... }
fn visit_terminator_after_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_terminator: &'mir Terminator<'tcx>,
_location: Location
) { ... }
fn visit_block_end(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_block_data: &'mir BasicBlockData<'tcx>,
_block: BasicBlock
) { ... }
}
Expand description
A visitor over the results of an Analysis
. The type parameter R
is the results type being
visited.
Required Associated Types§
Provided Methods§
fn visit_block_start( &mut self, _results: &mut R, _state: &Self::FlowState, _block_data: &'mir BasicBlockData<'tcx>, _block: BasicBlock )
sourcefn visit_statement_before_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_statement: &'mir Statement<'tcx>,
_location: Location
)
fn visit_statement_before_primary_effect( &mut self, _results: &mut R, _state: &Self::FlowState, _statement: &'mir Statement<'tcx>, _location: Location )
Called with the before_statement_effect
of the given statement applied to state
but not
its statement_effect
.
sourcefn visit_statement_after_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_statement: &'mir Statement<'tcx>,
_location: Location
)
fn visit_statement_after_primary_effect( &mut self, _results: &mut R, _state: &Self::FlowState, _statement: &'mir Statement<'tcx>, _location: Location )
Called with both the before_statement_effect
and the statement_effect
of the given
statement applied to state
.
sourcefn visit_terminator_before_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_terminator: &'mir Terminator<'tcx>,
_location: Location
)
fn visit_terminator_before_primary_effect( &mut self, _results: &mut R, _state: &Self::FlowState, _terminator: &'mir Terminator<'tcx>, _location: Location )
Called with the before_terminator_effect
of the given terminator applied to state
but not
its terminator_effect
.
sourcefn visit_terminator_after_primary_effect(
&mut self,
_results: &mut R,
_state: &Self::FlowState,
_terminator: &'mir Terminator<'tcx>,
_location: Location
)
fn visit_terminator_after_primary_effect( &mut self, _results: &mut R, _state: &Self::FlowState, _terminator: &'mir Terminator<'tcx>, _location: Location )
Called with both the before_terminator_effect
and the terminator_effect
of the given
terminator applied to state
.
The call_return_effect
(if one exists) will not be applied to state
.