pub enum EthereumHardfork {
Show 18 variants
Frontier,
Homestead,
Dao,
Tangerine,
SpuriousDragon,
Byzantium,
Constantinople,
Petersburg,
Istanbul,
MuirGlacier,
Berlin,
London,
ArrowGlacier,
GrayGlacier,
Paris,
Shanghai,
Cancun,
Prague,
}
Expand description
The name of an Ethereum hardfork.
Variants§
Frontier
Homestead
Homestead: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/homestead.md.
Dao
The DAO fork: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/dao-fork.md.
Tangerine
SpuriousDragon
Spurious Dragon: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/spurious-dragon.md.
Byzantium
Byzantium: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/byzantium.md.
Constantinople
Constantinople: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/constantinople.md.
Petersburg
Petersburg: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/petersburg.md.
Istanbul
MuirGlacier
Muir Glacier: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/muir-glacier.md.
Berlin
Berlin: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/berlin.md.
London
London: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/london.md.
ArrowGlacier
Arrow Glacier: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/arrow-glacier.md.
GrayGlacier
Gray Glacier: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/gray-glacier.md.
Paris
Paris: https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/paris.md.
Shanghai
Cancun
Cancun.
Prague
Implementations§
source§impl EthereumHardfork
impl EthereumHardfork
sourcepub fn activation_block(&self, chain: Chain) -> Option<u64>
pub fn activation_block(&self, chain: Chain) -> Option<u64>
Retrieves the activation block for the specified hardfork on the given chain.
sourcepub const fn mainnet_activation_block(&self) -> Option<u64>
pub const fn mainnet_activation_block(&self) -> Option<u64>
Retrieves the activation block for the specified hardfork on the Ethereum mainnet.
sourcepub const fn sepolia_activation_block(&self) -> Option<u64>
pub const fn sepolia_activation_block(&self) -> Option<u64>
Retrieves the activation block for the specified hardfork on the Sepolia testnet.
sourcepub const fn arbitrum_sepolia_activation_block(&self) -> Option<u64>
pub const fn arbitrum_sepolia_activation_block(&self) -> Option<u64>
Retrieves the activation block for the specified hardfork on the Arbitrum Sepolia testnet.
sourcepub const fn arbitrum_activation_block(&self) -> Option<u64>
pub const fn arbitrum_activation_block(&self) -> Option<u64>
Retrieves the activation block for the specified hardfork on the Arbitrum One mainnet.
sourcepub fn activation_timestamp(&self, chain: Chain) -> Option<u64>
pub fn activation_timestamp(&self, chain: Chain) -> Option<u64>
Retrieves the activation timestamp for the specified hardfork on the given chain.
sourcepub const fn mainnet_activation_timestamp(&self) -> Option<u64>
pub const fn mainnet_activation_timestamp(&self) -> Option<u64>
Retrieves the activation timestamp for the specified hardfork on the Ethereum mainnet.
sourcepub const fn sepolia_activation_timestamp(&self) -> Option<u64>
pub const fn sepolia_activation_timestamp(&self) -> Option<u64>
Retrieves the activation timestamp for the specified hardfork on the Sepolia testnet.
sourcepub const fn holesky_activation_timestamp(&self) -> Option<u64>
pub const fn holesky_activation_timestamp(&self) -> Option<u64>
Retrieves the activation timestamp for the specified hardfork on the Holesky testnet.
sourcepub const fn arbitrum_sepolia_activation_timestamp(&self) -> Option<u64>
pub const fn arbitrum_sepolia_activation_timestamp(&self) -> Option<u64>
Retrieves the activation timestamp for the specified hardfork on the Arbitrum Sepolia testnet.
sourcepub const fn arbitrum_activation_timestamp(&self) -> Option<u64>
pub const fn arbitrum_activation_timestamp(&self) -> Option<u64>
Retrieves the activation timestamp for the specified hardfork on the Arbitrum One mainnet.
sourcepub const fn mainnet() -> [(Self, ForkCondition); 17]
pub const fn mainnet() -> [(Self, ForkCondition); 17]
Ethereum mainnet list of hardforks.
sourcepub const fn sepolia() -> [(Self, ForkCondition); 15]
pub const fn sepolia() -> [(Self, ForkCondition); 15]
Ethereum sepolia list of hardforks.
sourcepub const fn holesky() -> [(Self, ForkCondition); 15]
pub const fn holesky() -> [(Self, ForkCondition); 15]
Ethereum holesky list of hardforks.
Trait Implementations§
source§impl Clone for EthereumHardfork
impl Clone for EthereumHardfork
source§fn clone(&self) -> EthereumHardfork
fn clone(&self) -> EthereumHardfork
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for EthereumHardfork
impl Debug for EthereumHardfork
source§impl<'de> Deserialize<'de> for EthereumHardfork
impl<'de> Deserialize<'de> for EthereumHardfork
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>,
source§impl Display for EthereumHardfork
impl Display for EthereumHardfork
source§impl FromStr for EthereumHardfork
impl FromStr for EthereumHardfork
source§impl Hash for EthereumHardfork
impl Hash for EthereumHardfork
source§impl Ord for EthereumHardfork
impl Ord for EthereumHardfork
source§fn cmp(&self, other: &EthereumHardfork) -> Ordering
fn cmp(&self, other: &EthereumHardfork) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for EthereumHardfork
impl PartialEq for EthereumHardfork
source§impl PartialOrd for EthereumHardfork
impl PartialOrd for EthereumHardfork
source§impl Serialize for EthereumHardfork
impl Serialize for EthereumHardfork
impl Copy for EthereumHardfork
impl Eq for EthereumHardfork
impl StructuralPartialEq for EthereumHardfork
Auto Trait Implementations§
impl Freeze for EthereumHardfork
impl RefUnwindSafe for EthereumHardfork
impl Send for EthereumHardfork
impl Sync for EthereumHardfork
impl Unpin for EthereumHardfork
impl UnwindSafe for EthereumHardfork
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> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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:
Frontier
: 0 bytesHomestead
: 0 bytesDao
: 0 bytesTangerine
: 0 bytesSpuriousDragon
: 0 bytesByzantium
: 0 bytesConstantinople
: 0 bytesPetersburg
: 0 bytesIstanbul
: 0 bytesMuirGlacier
: 0 bytesBerlin
: 0 bytesLondon
: 0 bytesArrowGlacier
: 0 bytesGrayGlacier
: 0 bytesParis
: 0 bytesShanghai
: 0 bytesCancun
: 0 bytesPrague
: 0 bytes