Trait RecursionInteractionAirBuilder

Source
pub trait RecursionInteractionAirBuilder: BaseAirBuilder {
    // Provided methods
    fn send_range_check(
        &mut self,
        range_check_opcode: impl Into<Self::Expr>,
        val: impl Into<Self::Expr>,
        is_real: impl Into<Self::Expr>,
    ) { ... }
    fn receive_range_check(
        &mut self,
        range_check_opcode: impl Into<Self::Expr>,
        val: impl Into<Self::Expr>,
        is_real: impl Into<Self::Expr>,
    ) { ... }
    fn send_program<E: Into<Self::Expr> + Copy>(
        &mut self,
        pc: impl Into<Self::Expr>,
        instruction: InstructionCols<E>,
        selectors: OpcodeSelectorCols<E>,
        is_real: impl Into<Self::Expr>,
    ) { ... }
    fn receive_program<E: Into<Self::Expr> + Copy>(
        &mut self,
        pc: impl Into<Self::Expr>,
        instruction: InstructionCols<E>,
        selectors: OpcodeSelectorCols<E>,
        is_real: impl Into<Self::Expr>,
    ) { ... }
    fn send_table<E: Into<Self::Expr> + Clone>(
        &mut self,
        opcode: impl Into<Self::Expr>,
        table: &[E],
        is_real: impl Into<Self::Expr>,
    ) { ... }
    fn receive_table<E: Into<Self::Expr> + Clone>(
        &mut self,
        opcode: impl Into<Self::Expr>,
        table: &[E],
        is_real: impl Into<Self::Expr>,
    ) { ... }
}
Expand description

Builder trait containing helper functions to send/receive interactions.

Provided Methods§

Source

fn send_range_check( &mut self, range_check_opcode: impl Into<Self::Expr>, val: impl Into<Self::Expr>, is_real: impl Into<Self::Expr>, )

Sends a range check operation to be processed.

Source

fn receive_range_check( &mut self, range_check_opcode: impl Into<Self::Expr>, val: impl Into<Self::Expr>, is_real: impl Into<Self::Expr>, )

Receives a range check operation to be processed.

Source

fn send_program<E: Into<Self::Expr> + Copy>( &mut self, pc: impl Into<Self::Expr>, instruction: InstructionCols<E>, selectors: OpcodeSelectorCols<E>, is_real: impl Into<Self::Expr>, )

Source

fn receive_program<E: Into<Self::Expr> + Copy>( &mut self, pc: impl Into<Self::Expr>, instruction: InstructionCols<E>, selectors: OpcodeSelectorCols<E>, is_real: impl Into<Self::Expr>, )

Source

fn send_table<E: Into<Self::Expr> + Clone>( &mut self, opcode: impl Into<Self::Expr>, table: &[E], is_real: impl Into<Self::Expr>, )

Source

fn receive_table<E: Into<Self::Expr> + Clone>( &mut self, opcode: impl Into<Self::Expr>, table: &[E], is_real: impl Into<Self::Expr>, )

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§