#[repr(u8)]pub enum SystemExitCode {
Halted,
Paused,
SystemSplit,
// some variants omitted
}Expand description
@notice Exit condition indicated by the zkVM at the end of the execution covered by this proof.
@dev
Halted indicates normal termination of a program with an interior exit code returned from the
guest program. A halted program cannot be resumed.
Paused indicates the execution ended in a paused state with an interior exit code set by the
guest program. A paused program can be resumed such that execution picks up where it left
of, with the same memory state.
SystemSplit indicates the execution ended on a host-initiated system split. System split is
mechanism by which the host can temporarily stop execution of the execution ended in a system
split has no output and no conclusions can be drawn about whether the program will eventually
halt. System split is used in continuations to split execution into individually provable segments.
enum SystemExitCode { Halted, Paused, SystemSplit }Variants§
Trait Implementations§
Source§impl Clone for SystemExitCode
impl Clone for SystemExitCode
Source§fn clone(&self) -> SystemExitCode
fn clone(&self) -> SystemExitCode
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SystemExitCode
impl Debug for SystemExitCode
Source§impl EventTopic for SystemExitCode
impl EventTopic for SystemExitCode
Source§fn topic_preimage_length(rust: &Self::RustType) -> usize
fn topic_preimage_length(rust: &Self::RustType) -> usize
Source§fn encode_topic_preimage(rust: &Self::RustType, out: &mut Vec<u8>)
fn encode_topic_preimage(rust: &Self::RustType, out: &mut Vec<u8>)
encode_topic. Read moreSource§impl From<SystemExitCode> for u8
impl From<SystemExitCode> for u8
Source§fn from(v: SystemExitCode) -> Self
fn from(v: SystemExitCode) -> Self
Source§impl Hash for SystemExitCode
impl Hash for SystemExitCode
Source§impl PartialEq for SystemExitCode
impl PartialEq for SystemExitCode
Source§impl SolEnum for SystemExitCode
impl SolEnum for SystemExitCode
Source§impl SolType for SystemExitCode
impl SolType for SystemExitCode
Source§const SOL_NAME: &'static str = <alloy_sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::SOL_NAME
const SOL_NAME: &'static str = <alloy_sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::SOL_NAME
Source§const ENCODED_SIZE: Option<usize> = <alloy_sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::ENCODED_SIZE
const ENCODED_SIZE: Option<usize> = <alloy_sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::ENCODED_SIZE
Source§const PACKED_ENCODED_SIZE: Option<usize> = <alloy_sol_types::sol_data::Uint<8> as
alloy_sol_types::SolType>::PACKED_ENCODED_SIZE
const PACKED_ENCODED_SIZE: Option<usize> = <alloy_sol_types::sol_data::Uint<8> as alloy_sol_types::SolType>::PACKED_ENCODED_SIZE
Source§type RustType = SystemExitCode
type RustType = SystemExitCode
Source§fn valid_token(token: &Self::Token<'_>) -> bool
fn valid_token(token: &Self::Token<'_>) -> bool
true if the given token can be detokenized with this type.Source§fn type_check(token: &Self::Token<'_>) -> Result<()>
fn type_check(token: &Self::Token<'_>) -> Result<()>
Source§fn detokenize(token: Self::Token<'_>) -> Self::RustType
fn detokenize(token: Self::Token<'_>) -> Self::RustType
Source§fn sol_type_name() -> Cow<'static, str>
fn sol_type_name() -> Cow<'static, str>
SOL_NAME insteadSource§fn abi_encoded_size<E>(rust: &E) -> usizewhere
E: SolTypeValue<Self> + ?Sized,
fn abi_encoded_size<E>(rust: &E) -> usizewhere
E: SolTypeValue<Self> + ?Sized,
Source§fn tokenize<E>(rust: &E) -> Self::Token<'_>where
E: SolTypeValue<Self> + ?Sized,
fn tokenize<E>(rust: &E) -> Self::Token<'_>where
E: SolTypeValue<Self> + ?Sized,
Source§fn eip712_data_word<E>(rust: &E) -> FixedBytes<32>where
E: SolTypeValue<Self> + ?Sized,
fn eip712_data_word<E>(rust: &E) -> FixedBytes<32>where
E: SolTypeValue<Self> + ?Sized,
encodeData rules, and hash it
if necessary. Read moreSource§fn abi_packed_encoded_size<E>(rust: &E) -> usizewhere
E: SolTypeValue<Self> + ?Sized,
fn abi_packed_encoded_size<E>(rust: &E) -> usizewhere
E: SolTypeValue<Self> + ?Sized,
Source§fn abi_encode_packed_to<E>(rust: &E, out: &mut Vec<u8>)where
E: SolTypeValue<Self> + ?Sized,
fn abi_encode_packed_to<E>(rust: &E, out: &mut Vec<u8>)where
E: SolTypeValue<Self> + ?Sized,
Source§fn abi_encode_packed<E>(rust: &E) -> Vec<u8> ⓘwhere
E: SolTypeValue<Self> + ?Sized,
fn abi_encode_packed<E>(rust: &E) -> Vec<u8> ⓘwhere
E: SolTypeValue<Self> + ?Sized,
Source§fn abi_encode<E>(rust: &E) -> Vec<u8> ⓘwhere
E: SolTypeValue<Self> + ?Sized,
fn abi_encode<E>(rust: &E) -> Vec<u8> ⓘwhere
E: SolTypeValue<Self> + ?Sized,
Source§fn abi_encode_params<E>(rust: &E) -> Vec<u8> ⓘ
fn abi_encode_params<E>(rust: &E) -> Vec<u8> ⓘ
Source§fn abi_encode_sequence<E>(rust: &E) -> Vec<u8> ⓘ
fn abi_encode_sequence<E>(rust: &E) -> Vec<u8> ⓘ
Source§fn abi_decode(data: &[u8], validate: bool) -> Result<Self::RustType, Error>
fn abi_decode(data: &[u8], validate: bool) -> Result<Self::RustType, Error>
Source§impl SolTypeValue<SystemExitCode> for SystemExitCode
impl SolTypeValue<SystemExitCode> for SystemExitCode
fn stv_to_tokens(&self) -> <Uint<8> as SolType>::Token<'_>
fn stv_eip712_data_word(&self) -> Word
fn stv_abi_encode_packed_to(&self, out: &mut Vec<u8>)
fn stv_abi_encoded_size(&self) -> usize
fn stv_abi_packed_encoded_size(&self) -> usize
Source§impl SolValue for SystemExitCode
impl SolValue for SystemExitCode
Source§type SolType = SystemExitCode
type SolType = SystemExitCode
Source§fn sol_type_name(&self) -> Cow<'static, str>
fn sol_type_name(&self) -> Cow<'static, str>
sol_name insteadSource§fn tokenize(&self) -> <Self::SolType as SolType>::Token<'_>
fn tokenize(&self) -> <Self::SolType as SolType>::Token<'_>
Source§fn detokenize(token: <Self::SolType as SolType>::Token<'_>) -> Self
fn detokenize(token: <Self::SolType as SolType>::Token<'_>) -> Self
Source§fn abi_encoded_size(&self) -> usize
fn abi_encoded_size(&self) -> usize
Source§fn eip712_data_word(&self) -> FixedBytes<32>
fn eip712_data_word(&self) -> FixedBytes<32>
encodeData rules, and hash it
if necessary. Read moreSource§fn abi_encode_packed_to(&self, out: &mut Vec<u8>)
fn abi_encode_packed_to(&self, out: &mut Vec<u8>)
Source§fn abi_encode_params(&self) -> Vec<u8> ⓘ
fn abi_encode_params(&self) -> Vec<u8> ⓘ
Source§fn abi_decode(data: &[u8], validate: bool) -> Result<Self, Error>
fn abi_decode(data: &[u8], validate: bool) -> Result<Self, Error>
Source§impl TryFrom<u8> for SystemExitCode
impl TryFrom<u8> for SystemExitCode
impl Copy for SystemExitCode
impl Eq for SystemExitCode
impl StructuralPartialEq for SystemExitCode
Auto Trait Implementations§
impl Freeze for SystemExitCode
impl RefUnwindSafe for SystemExitCode
impl Send for SystemExitCode
impl Sync for SystemExitCode
impl Unpin for SystemExitCode
impl UnwindSafe for SystemExitCode
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
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
key and return true if they are equal.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> 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>
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>
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