feat(traverse): add network id to genesis values (#272)

This commit is contained in:
Cainã Costa 2023-09-01 09:18:51 -03:00 committed by GitHub
parent b294f9be01
commit faa11a5bfd

View file

@ -1,21 +1,26 @@
use serde::{Deserialize, Serialize}; use serde::{Deserialize, Serialize};
/// Well-known magic for testnet /// Well-known params for testnet
pub const TESTNET_MAGIC: u64 = 1097911063; pub const TESTNET_MAGIC: u64 = 1097911063;
pub const TESTNET_NETWORK_ID: u64 = 0;
/// Well-known magic for mainnet /// Well-known params for mainnet
pub const MAINNET_MAGIC: u64 = 764824073; pub const MAINNET_MAGIC: u64 = 764824073;
pub const MAINNET_NETWORK_ID: u64 = 1;
/// Well-known magic for preview /// Well-known params for preview
pub const PREVIEW_MAGIC: u64 = 2; pub const PREVIEW_MAGIC: u64 = 2;
pub const PREVIEW_NETWORK_ID: u64 = 0;
/// Well-known magic for pre-production /// Well-known params for pre-production
pub const PRE_PRODUCTION_MAGIC: u64 = 1; pub const PRE_PRODUCTION_MAGIC: u64 = 1;
pub const PRE_PRODUCTION_NETWORK_ID: u64 = 0;
/// Well-known information about specific networks /// Well-known information about specific networks
#[derive(Serialize, Deserialize, Debug, Clone)] #[derive(Serialize, Deserialize, Debug, Clone)]
pub struct GenesisValues { pub struct GenesisValues {
pub magic: u64, pub magic: u64,
pub network_id: u64,
pub byron_epoch_length: u32, pub byron_epoch_length: u32,
pub byron_slot_length: u32, pub byron_slot_length: u32,
pub byron_known_slot: u64, pub byron_known_slot: u64,
@ -33,6 +38,7 @@ impl GenesisValues {
pub fn mainnet() -> Self { pub fn mainnet() -> Self {
GenesisValues { GenesisValues {
magic: MAINNET_MAGIC, magic: MAINNET_MAGIC,
network_id: MAINNET_NETWORK_ID,
byron_epoch_length: 432000, byron_epoch_length: 432000,
byron_slot_length: 20, byron_slot_length: 20,
byron_known_slot: 0, byron_known_slot: 0,
@ -52,6 +58,7 @@ impl GenesisValues {
pub fn testnet() -> Self { pub fn testnet() -> Self {
GenesisValues { GenesisValues {
magic: TESTNET_MAGIC, magic: TESTNET_MAGIC,
network_id: TESTNET_NETWORK_ID,
byron_epoch_length: 432000, byron_epoch_length: 432000,
byron_slot_length: 20, byron_slot_length: 20,
byron_known_slot: 0, byron_known_slot: 0,
@ -70,6 +77,7 @@ impl GenesisValues {
pub fn preview() -> Self { pub fn preview() -> Self {
GenesisValues { GenesisValues {
magic: PREVIEW_MAGIC, magic: PREVIEW_MAGIC,
network_id: PREVIEW_NETWORK_ID,
byron_epoch_length: 432000, byron_epoch_length: 432000,
byron_slot_length: 20, byron_slot_length: 20,
byron_known_slot: 0, byron_known_slot: 0,
@ -88,6 +96,7 @@ impl GenesisValues {
pub fn preprod() -> Self { pub fn preprod() -> Self {
GenesisValues { GenesisValues {
magic: PRE_PRODUCTION_MAGIC, magic: PRE_PRODUCTION_MAGIC,
network_id: PRE_PRODUCTION_NETWORK_ID,
byron_epoch_length: 432000, byron_epoch_length: 432000,
byron_slot_length: 20, byron_slot_length: 20,
byron_known_slot: 0, byron_known_slot: 0,