Struct Predeploys

Source
#[non_exhaustive]
pub struct Predeploys;
Expand description

Container for all predeploy contract addresses

Implementations§

Source§

impl Predeploys

Source

pub const ALL: [Address; 24]

List of all predeploys.

Source

pub const LEGACY_MESSAGE_PASSER: Address

The LegacyMessagePasser contract stores commitments to withdrawal transactions before the Bedrock upgrade. https://specs.optimism.io/protocol/predeploys.html#legacymessagepasser

Source

pub const DEPLOYER_WHITELIST: Address

The DeployerWhitelist was used to provide additional safety during initial phases of Optimism. https://specs.optimism.io/protocol/predeploys.html#deployerwhitelist

Source

pub const LEGACY_ERC20_ETH: Address

The LegacyERC20ETH predeploy represented all ether in the system before the Bedrock upgrade. https://specs.optimism.io/protocol/predeploys.html#legacyerc20eth

Source

pub const WETH9: Address

Source

pub const L2_CROSS_DOMAIN_MESSENGER: Address

Higher level API for sending cross domain messages. https://specs.optimism.io/protocol/predeploys.html#l2crossdomainmessenger

Source

pub const L2_STANDARD_BRIDGE: Address

The L2 cross-domain messenger proxy address. https://specs.optimism.io/protocol/predeploys.html#l2standardbridge

Source

pub const SEQUENCER_FEE_VAULT: Address

Source

pub const OP_MINTABLE_ERC20_FACTORY: Address

Source

pub const L1_BLOCK_NUMBER: Address

Returns the last known L1 block number (legacy system). https://specs.optimism.io/protocol/predeploys.html#l1blocknumber

Source

pub const GAS_PRICE_ORACLE: Address

Source

pub const GOVERNANCE_TOKEN: Address

The governance token proxy address. https://specs.optimism.io/governance/gov-token.html

Source

pub const L1_BLOCK_INFO: Address

The L1 block information proxy address. https://specs.optimism.io/protocol/predeploys.html#l1block

Source

pub const L2_TO_L1_MESSAGE_PASSER: Address

The L2 contract L2ToL1MessagePasser, stores commitments to withdrawal transactions. https://specs.optimism.io/protocol/predeploys.html#l2tol1messagepasser

Source

pub const L2_ERC721_BRIDGE: Address

The L2 ERC721 bridge proxy address. https://specs.optimism.io/protocol/predeploys.html

Source

pub const OP_MINTABLE_ERC721_FACTORY: Address

Source

pub const PROXY_ADMIN: Address

Source

pub const BASE_FEE_VAULT: Address

Source

pub const L1_FEE_VAULT: Address

Source

pub const SCHEMA_REGISTRY: Address

Source

pub const EAS: Address

Source

pub const BEACON_BLOCK_ROOT: Address

Provides access to L1 beacon block roots (EIP-4788). https://specs.optimism.io/protocol/predeploys.html#beacon-block-root

Source

pub const OPERATOR_FEE_VAULT: Address

The Operator Fee Vault proxy address.

Source

pub const CROSS_L2_INBOX: Address

The CrossL2Inbox proxy address.

Source

pub const L2_TO_L2_XDM: Address

The L2ToL2CrossDomainMessenger proxy address.

Trait Implementations§

Source§

impl Clone for Predeploys

Source§

fn clone(&self) -> Predeploys

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Predeploys

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Predeploys

Source§

fn eq(&self, other: &Predeploys) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for Predeploys

Source§

impl Eq for Predeploys

Source§

impl StructuralPartialEq for Predeploys

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit #126799)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more