pub trait MirVisitor {
// Provided methods
fn visit_context(&mut self, ctx: &MirContext) { ... }
fn visit_function(&mut self, func: &FunctionMIR) { ... }
fn visit_basic_block(&mut self, _id: BasicBlockId, block: &BasicBlock) { ... }
fn visit_statement(&mut self, stmt: &Statement) { ... }
fn visit_terminator(&mut self, term: &Terminator) { ... }
fn visit_place(&mut self, place: &Place) { ... }
fn visit_rvalue(&mut self, rvalue: &Rvalue) { ... }
fn visit_operand(&mut self, operand: &Operand) { ... }
fn visit_local(&mut self, _local: Local) { ... }
fn visit_target(&mut self, _target: BasicBlockId) { ... }
}Expand description
Visitor trait for MIR
Implement this trait to traverse MIR structures. All methods have default implementations that do nothing.
Provided Methods§
Sourcefn visit_context(&mut self, ctx: &MirContext)
fn visit_context(&mut self, ctx: &MirContext)
Visit a MIR context
Sourcefn visit_function(&mut self, func: &FunctionMIR)
fn visit_function(&mut self, func: &FunctionMIR)
Visit a function
Sourcefn visit_basic_block(&mut self, _id: BasicBlockId, block: &BasicBlock)
fn visit_basic_block(&mut self, _id: BasicBlockId, block: &BasicBlock)
Visit a basic block
Sourcefn visit_statement(&mut self, stmt: &Statement)
fn visit_statement(&mut self, stmt: &Statement)
Visit a statement
Sourcefn visit_terminator(&mut self, term: &Terminator)
fn visit_terminator(&mut self, term: &Terminator)
Visit a terminator
Sourcefn visit_place(&mut self, place: &Place)
fn visit_place(&mut self, place: &Place)
Visit a place
Sourcefn visit_rvalue(&mut self, rvalue: &Rvalue)
fn visit_rvalue(&mut self, rvalue: &Rvalue)
Visit an rvalue
Sourcefn visit_operand(&mut self, operand: &Operand)
fn visit_operand(&mut self, operand: &Operand)
Visit an operand
Sourcefn visit_local(&mut self, _local: Local)
fn visit_local(&mut self, _local: Local)
Visit a local
Sourcefn visit_target(&mut self, _target: BasicBlockId)
fn visit_target(&mut self, _target: BasicBlockId)
Visit a target block