pub trait TestBuilder<F> {
Show 16 methods
// Required methods
fn execute<E: PreflightExecutor<F, RA>, RA: Arena>(
&mut self,
executor: &mut E,
arena: &mut RA,
instruction: &Instruction<F>,
);
fn execute_with_pc<E: PreflightExecutor<F, RA>, RA: Arena>(
&mut self,
executor: &mut E,
arena: &mut RA,
instruction: &Instruction<F>,
initial_pc: u32,
);
fn write_cell(&mut self, address_space: usize, pointer: usize, value: F);
fn read_cell(&mut self, address_space: usize, pointer: usize) -> F;
fn write<const N: usize>(
&mut self,
address_space: usize,
pointer: usize,
value: [F; N],
);
fn read<const N: usize>(
&mut self,
address_space: usize,
pointer: usize,
) -> [F; N];
fn write_usize<const N: usize>(
&mut self,
address_space: usize,
pointer: usize,
value: [usize; N],
);
fn address_bits(&self) -> usize;
fn last_to_pc(&self) -> F;
fn last_from_pc(&self) -> F;
fn execution_final_state(&self) -> ExecutionState<F>;
fn streams_mut(&mut self) -> &mut Streams<F>;
fn get_default_register(&mut self, increment: usize) -> usize;
fn get_default_pointer(&mut self, increment: usize) -> usize;
fn write_heap_pointer_default(
&mut self,
reg_increment: usize,
pointer_increment: usize,
) -> (usize, usize);
fn write_heap_default<const NUM_LIMBS: usize>(
&mut self,
reg_increment: usize,
pointer_increment: usize,
writes: Vec<[F; NUM_LIMBS]>,
) -> (usize, usize);
}
Required Methods§
fn execute<E: PreflightExecutor<F, RA>, RA: Arena>( &mut self, executor: &mut E, arena: &mut RA, instruction: &Instruction<F>, )
fn execute_with_pc<E: PreflightExecutor<F, RA>, RA: Arena>( &mut self, executor: &mut E, arena: &mut RA, instruction: &Instruction<F>, initial_pc: u32, )
fn write_cell(&mut self, address_space: usize, pointer: usize, value: F)
fn read_cell(&mut self, address_space: usize, pointer: usize) -> F
fn write<const N: usize>( &mut self, address_space: usize, pointer: usize, value: [F; N], )
fn read<const N: usize>( &mut self, address_space: usize, pointer: usize, ) -> [F; N]
fn write_usize<const N: usize>( &mut self, address_space: usize, pointer: usize, value: [usize; N], )
fn address_bits(&self) -> usize
fn last_to_pc(&self) -> F
fn last_from_pc(&self) -> F
fn execution_final_state(&self) -> ExecutionState<F>
fn streams_mut(&mut self) -> &mut Streams<F>
fn get_default_register(&mut self, increment: usize) -> usize
fn get_default_pointer(&mut self, increment: usize) -> usize
fn write_heap_pointer_default( &mut self, reg_increment: usize, pointer_increment: usize, ) -> (usize, usize)
fn write_heap_default<const NUM_LIMBS: usize>( &mut self, reg_increment: usize, pointer_increment: usize, writes: Vec<[F; NUM_LIMBS]>, ) -> (usize, usize)
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.