superchain-primitives 0.5.0

Deprecated. Please use the 'op-alloy-genesis' crate instead.
Documentation

superchain-primitives

WARNING

This crate has been deprecated. Please use https://crates.io/crates/op-alloy-genesis instead.

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.

[dependencies]
superchain-primitives = "0.3"

To disable default feature flags, disable the default-features field like so.

superchain-primitives = { version = "0.3", default-features = false }

Features can then be enabled individually.

superchain-primitives = { version = "0.3", default-features = false, features = [ "std" ] }

Example

Below uses statically defined rollup configs for common chain ids.

use superchain_primitives::rollup_config_from_chain_id;

let op_mainnet_rollup_config = rollup_config_from_chain_id(10).unwrap();
println!("OP Mainnet Rollup Config:\n{op_mainnet_rollup_config:?}");

To inherit rollup configs defined by the superchain-registry, use the superchain-registry crate defined in registry. Note, serde is required.

Feature Flags

  • serde: Implements serialization and deserialization for types.
  • std: Uses standard library types.

Hardcoded Rollup Configs