pub struct CairoProgram {
pub instructions: Vec<Instruction>,
pub debug_info: CairoProgramDebugInfo,
pub consts_info: ConstsInfo,
}Expand description
The CASM program representation.
Fields§
§instructions: Vec<Instruction>§debug_info: CairoProgramDebugInfo§consts_info: ConstsInfoImplementations§
Source§impl CairoProgram
impl CairoProgram
Sourcepub fn assemble(&self) -> AssembledCairoProgram
pub fn assemble(&self) -> AssembledCairoProgram
Creates an assembled representation of the program.
Sourcepub fn assemble_ex<'a>(
&'a self,
header: impl IntoIterator<Item = &'a Instruction>,
footer: &[Instruction],
) -> AssembledCairoProgram
pub fn assemble_ex<'a>( &'a self, header: impl IntoIterator<Item = &'a Instruction>, footer: &[Instruction], ) -> AssembledCairoProgram
Creates an assembled representation of the program preceded by header and followed by
footer.
Sourcepub fn sierra_statement_index_by_pc(&self, pc: usize) -> StatementIdx
pub fn sierra_statement_index_by_pc(&self, pc: usize) -> StatementIdx
Returns the Sierra statement corresponding to the given PC.
Trait Implementations§
Source§impl Clone for CairoProgram
impl Clone for CairoProgram
Source§fn clone(&self) -> CairoProgram
fn clone(&self) -> CairoProgram
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CairoProgram
impl Debug for CairoProgram
Source§impl Display for CairoProgram
impl Display for CairoProgram
Source§impl PartialEq for CairoProgram
impl PartialEq for CairoProgram
impl Eq for CairoProgram
impl StructuralPartialEq for CairoProgram
Auto Trait Implementations§
impl Freeze for CairoProgram
impl RefUnwindSafe for CairoProgram
impl Send for CairoProgram
impl Sync for CairoProgram
impl Unpin for CairoProgram
impl UnwindSafe for CairoProgram
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more