pub enum SupportedEVMVersions {
Paris,
Shanghai,
Cancun,
Prague,
Osaka,
Amsterdam,
}Expand description
Evm Version
Determines which features will be available when compiling.
Variants§
Paris
Introduced PREVRANDAO, disallow difficulty opcode (does not affect codegen)
Shanghai
Introduced PUSH0
Cancun
Deneb/Cancun - Introduced TLOAD, TSTORE, MCOPY, BLOBHASH, and BLOBBASEFEE
Meta: https://eips.ethereum.org/EIPS/eip-7569 TLOAD/TSTORE: https://eips.ethereum.org/EIPS/eip-1153 MCOPY: https://eips.ethereum.org/EIPS/eip-5656 BLOBHASH: https://eips.ethereum.org/EIPS/eip-4844 BLOBBASEFEE: https://eips.ethereum.org/EIPS/eip-7516
Prague
Prague/Electra - No new opcodes
Osaka
Fulu/Osaka - Introduced CLZ
Meta: https://eips.ethereum.org/EIPS/eip-7607 CLZ: https://eips.ethereum.org/EIPS/eip-7939
Amsterdam
Glamsterdam/Amsterdam - Introduced SLOTNUM, DUPN, SWAPN, EXCHANGE and raised the contract size limits
Meta: https://eips.ethereum.org/EIPS/eip-7773 SLOTNUM: https://eips.ethereum.org/EIPS/eip-7843 DUPN/SWAPN/EXCHANGE: https://eips.ethereum.org/EIPS/eip-8024 Contract size limits: https://eips.ethereum.org/EIPS/eip-7954
Trait Implementations§
Source§impl Clone for SupportedEVMVersions
impl Clone for SupportedEVMVersions
impl Copy for SupportedEVMVersions
Source§impl Debug for SupportedEVMVersions
impl Debug for SupportedEVMVersions
Source§impl Default for SupportedEVMVersions
impl Default for SupportedEVMVersions
Source§impl Display for SupportedEVMVersions
Display SupportedEVMVersions as string
impl Display for SupportedEVMVersions
Display SupportedEVMVersions as string
Source§impl PartialEq for SupportedEVMVersions
impl PartialEq for SupportedEVMVersions
Source§impl PartialOrd for SupportedEVMVersions
impl PartialOrd for SupportedEVMVersions
impl StructuralPartialEq for SupportedEVMVersions
Auto Trait Implementations§
impl Freeze for SupportedEVMVersions
impl RefUnwindSafe for SupportedEVMVersions
impl Send for SupportedEVMVersions
impl Sync for SupportedEVMVersions
impl Unpin for SupportedEVMVersions
impl UnsafeUnpin for SupportedEVMVersions
impl UnwindSafe for SupportedEVMVersions
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,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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 moreSource§impl<S, T> Upcast<T> for S
impl<S, T> Upcast<T> for S
§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘwhere
S: Into<Dispatch>,
§fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 1 byte
Size for each variant:
Paris: 0 bytesShanghai: 0 bytesCancun: 0 bytesPrague: 0 bytesOsaka: 0 bytesAmsterdam: 0 bytes