pub enum CoreAirId {
Show 16 variants
Cpu = 0,
SyscallCore = 26,
DivRem = 28,
AddSub = 29,
Bitwise = 30,
Mul = 31,
ShiftRight = 32,
ShiftLeft = 33,
Lt = 34,
MemoryInstrs = 35,
Auipc = 36,
Branch = 37,
Jump = 38,
SyscallInstrs = 39,
MemoryLocal = 42,
Global = 43,
}Expand description
RV32IM AIR Identifiers.
These identifiers are for the various chips in the rv32im prover. We need them in the executor to compute the memory cost of the current shard of execution.
The CoreAirIds are the AIRs that are not part of precompile shards and not the program or
byte AIR.
Variants§
Cpu = 0
The CPU chip.
SyscallCore = 26
The syscall core chip.
DivRem = 28
The div rem chip.
AddSub = 29
The add sub chip.
Bitwise = 30
The bitwise chip.
Mul = 31
The mul chip.
ShiftRight = 32
The shift right chip.
ShiftLeft = 33
The shift left chip.
Lt = 34
The lt chip.
MemoryInstrs = 35
The memory instructions chip.
Auipc = 36
The auipc chip.
Branch = 37
The branch chip.
Jump = 38
The jump chip.
SyscallInstrs = 39
The syscall instructions chip.
MemoryLocal = 42
The memory local chip.
Global = 43
The global chip.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CoreAirId
impl<'de> Deserialize<'de> for CoreAirId
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<CoreAirId> for RiscvAirId
impl From<CoreAirId> for RiscvAirId
Source§impl IntoEnumIterator for CoreAirId
impl IntoEnumIterator for CoreAirId
type Iterator = CoreAirIdIter
fn iter() -> CoreAirIdIter ⓘ
Source§impl Ord for CoreAirId
impl Ord for CoreAirId
Source§impl PartialEq<CoreAirId> for RiscvAirId
impl PartialEq<CoreAirId> for RiscvAirId
Source§impl PartialEq<RiscvAirId> for CoreAirId
impl PartialEq<RiscvAirId> for CoreAirId
Source§impl PartialOrd for CoreAirId
impl PartialOrd for CoreAirId
Source§impl TryFrom<RiscvAirId> for CoreAirId
impl TryFrom<RiscvAirId> for CoreAirId
Source§type Error = CoreAirIdConvertError
type Error = CoreAirIdConvertError
The type returned in the event of a conversion error.
Source§fn try_from(
parent: RiscvAirId,
) -> Result<Self, <Self as TryFrom<RiscvAirId>>::Error>
fn try_from( parent: RiscvAirId, ) -> Result<Self, <Self as TryFrom<RiscvAirId>>::Error>
Performs the conversion.
impl Copy for CoreAirId
impl Eq for CoreAirId
impl StructuralPartialEq for CoreAirId
Auto Trait Implementations§
impl Freeze for CoreAirId
impl RefUnwindSafe for CoreAirId
impl Send for CoreAirId
impl Sync for CoreAirId
impl Unpin for CoreAirId
impl UnwindSafe for CoreAirId
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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