Struct turshi::runner::CairoProgram
source · pub struct CairoProgram<'a, F> {
pub steps: F,
pub mem: &'a mut CairoMemory<F>,
pub ini: CairoState<F>,
pub fin: CairoState<F>,
pub trace: Vec<CairoInstruction<F>>,
}
Expand description
This struct stores the needed information to run a program
Fields§
§steps: F
total number of steps
mem: &'a mut CairoMemory<F>
full execution memory
ini: CairoState<F>
initial computation registers
fin: CairoState<F>
final computation pointers
trace: Vec<CairoInstruction<F>>
execution trace as a vector of CairoInstruction
Implementations§
source§impl<'a, F: Field> CairoProgram<'a, F>
impl<'a, F: Field> CairoProgram<'a, F>
sourcepub fn new(mem: &mut CairoMemory<F>, pc: u64) -> CairoProgram<'_, F>
pub fn new(mem: &mut CairoMemory<F>, pc: u64) -> CairoProgram<'_, F>
Creates a Cairo execution from the public information (memory and initial pointers)
sourcepub fn steps(&self) -> F
pub fn steps(&self) -> F
Outputs the total number of steps of the execution carried out by the runner
sourcepub fn ini(&self) -> CairoState<F>
pub fn ini(&self) -> CairoState<F>
Outputs the initial value of the pointers after the execution carried out by the runner
sourcepub fn fin(&self) -> CairoState<F>
pub fn fin(&self) -> CairoState<F>
Outputs the final value of the pointers after the execution carried out by the runner
sourcepub fn trace(&self) -> &Vec<CairoInstruction<F>>
pub fn trace(&self) -> &Vec<CairoInstruction<F>>
Returns a reference to the set of instructions
Auto Trait Implementations§
impl<'a, F> RefUnwindSafe for CairoProgram<'a, F>where F: RefUnwindSafe,
impl<'a, F> Send for CairoProgram<'a, F>where F: Send,
impl<'a, F> Sync for CairoProgram<'a, F>where F: Sync,
impl<'a, F> Unpin for CairoProgram<'a, F>where F: Unpin,
impl<'a, F> !UnwindSafe for CairoProgram<'a, F>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more