Struct superchain_primitives::chain_config::ChainConfig
source · pub struct ChainConfig {Show 15 fields
pub name: String,
pub chain_id: u64,
pub l1_chain_id: u64,
pub public_rpc: String,
pub sequencer_rpc: String,
pub explorer: String,
pub superchain_level: SuperchainLevel,
pub superchain_time: Option<u64>,
pub batch_inbox_addr: Address,
pub genesis: ChainGenesis,
pub superchain: String,
pub chain: String,
pub hardfork_configuration: HardForkConfiguration,
pub alt_da: Option<AltDAConfig>,
pub addresses: Option<AddressList>,
}Expand description
A chain configuration.
Fields§
§name: StringChain name (e.g. “Base”)
chain_id: u64Chain ID
l1_chain_id: u64L1 chain ID
public_rpc: StringChain public RPC endpoint
sequencer_rpc: StringChain sequencer RPC endpoint
explorer: StringChain explorer HTTP endpoint
superchain_level: SuperchainLevelLevel of integration with the superchain.
superchain_time: Option<u64>Time of opt-in to the Superchain. If superchain_time is set, hardforks times after superchain_time will be inherited from the superchain-wide config.
batch_inbox_addr: AddressChain-specific batch inbox address
genesis: ChainGenesisChain-specific genesis information
superchain: StringSuperchain is a simple string to identify the superchain. This is implied by directory structure, and not encoded in the config file itself.
chain: StringChain is a simple string to identify the chain, within its superchain context. This matches the resource filename, it is not encoded in the config file itself.
hardfork_configuration: HardForkConfigurationHardfork Configuration. These values may override the superchain-wide defaults.
alt_da: Option<AltDAConfig>Optional AltDA feature
addresses: Option<AddressList>Addresses
Implementations§
source§impl ChainConfig
impl ChainConfig
sourcepub fn set_missing_fork_configs(&mut self, defaults: &HardForkConfiguration)
pub fn set_missing_fork_configs(&mut self, defaults: &HardForkConfiguration)
Set missing hardfork configurations to the defaults, if the chain has a superchain_time set. Defaults are only used if the chain’s hardfork activated after the superchain_time.
Trait Implementations§
source§impl Clone for ChainConfig
impl Clone for ChainConfig
source§fn clone(&self) -> ChainConfig
fn clone(&self) -> ChainConfig
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moresource§impl Debug for ChainConfig
impl Debug for ChainConfig
source§impl Default for ChainConfig
impl Default for ChainConfig
source§fn default() -> ChainConfig
fn default() -> ChainConfig
source§impl<'de> Deserialize<'de> for ChainConfig
impl<'de> Deserialize<'de> for ChainConfig
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 Hash for ChainConfig
impl Hash for ChainConfig
source§impl PartialEq for ChainConfig
impl PartialEq for ChainConfig
source§impl Serialize for ChainConfig
impl Serialize for ChainConfig
impl Eq for ChainConfig
impl StructuralPartialEq for ChainConfig
Auto Trait Implementations§
impl !Freeze for ChainConfig
impl RefUnwindSafe for ChainConfig
impl Send for ChainConfig
impl Sync for ChainConfig
impl Unpin for ChainConfig
impl UnwindSafe for ChainConfig
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)