Skip to main content

AirVisitor

Trait AirVisitor 

Source
pub trait AirVisitor {
    // Provided methods
    fn visit_function(&mut self, func: &AirFunction) -> bool { ... }
    fn visit_block(&mut self, func: &AirFunction, block: &AirBlock) -> bool { ... }
    fn visit_instruction(
        &mut self,
        func: &AirFunction,
        block: &AirBlock,
        inst: &Instruction,
    ) { ... }
}
Expand description

Visitor trait for traversing AIR module structures.

Default implementations are no-ops, so visitors only need to implement the methods they care about. Return false from visit_function or visit_block to skip visiting children.

Provided Methods§

Source

fn visit_function(&mut self, func: &AirFunction) -> bool

Called for each function. Return false to skip blocks/instructions.

Source

fn visit_block(&mut self, func: &AirFunction, block: &AirBlock) -> bool

Called for each block. Return false to skip instructions.

Source

fn visit_instruction( &mut self, func: &AirFunction, block: &AirBlock, inst: &Instruction, )

Called for each instruction.

Implementors§