superchain-primitives
A set of primitive types for the superchain.
These types mirror the golang types defined by the superchain-registry.
superchain-primitives is a no_std crate with optional type support for
serde serialization and deserialization providing a serde feature flag.
Standard library support is available by enabling the std feature flag on the
superchain-primitives dependency.
By default, both the std and serde feature flags are enabled.
Usage
Add the following to your Cargo.toml.
[]
= "0.2"
To disable default feature flags, disable the default-features field like so.
= { = "0.2", = false }
Features can then be enabled individually.
= { = "0.2", = false, = [ "std" ] }
Example
Below uses statically defined rollup configs for common chain ids.
use rollup_config_from_chain_id;
let op_mainnet_rollup_config = rollup_config_from_chain_id.unwrap;
println!;
To inherit rollup configs defined by the superchain-registry,
use the superchain-registry crate defined in rust-bindings.
Note, serde is required.
Feature Flags
serde: Implements serialization and deserialization for types.std: Uses standard library types.
Hardcoded Rollup Configs
OP_MAINNET_CONFIG: OP Mainnet (Chain ID:10)OP_SEPOLIA_CONFIG: OP Sepolia (Chain ID:11155420)BASE_MAINNET_CONFIG: Base Mainnet (Chain ID:8453)BASE_SEPOLIA_CONFIG: Base Sepolia (Chain ID:84532)