forkmanager

package
v1.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 6, 2023 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const InitialFork = "initialfork"

Variables

This section is empty.

Functions

func GetInstance

func GetInstance() *forkManager

GeInstance returns fork manager singleton instance. Thread safe

Types

type Fork

type Fork struct {
	// Name is name of the fork
	Name string
	// FromBlockNumber indicates the block from which fork becomes enabled
	FromBlockNumber uint64
	// Params are fork consensus parameters
	Params *ForkParams
	// IsActive is false if fork is registered but not activated
	IsActive bool
	// Handlers is a map of all handlers registered for this fork
	Handlers map[HandlerDesc]HandlerContainer
}

Fork structure defines one fork

type ForkParams added in v1.1.0

type ForkParams struct {
	// MaxValidatorSetSize indicates the maximum size of validator set
	MaxValidatorSetSize *uint64 `json:"maxValidatorSetSize,omitempty"`

	// EpochSize is size of epoch
	EpochSize *uint64 `json:"epochSize,omitempty"`

	// SprintSize is size of sprint
	SprintSize *uint64 `json:"sprintSize,omitempty"`

	// BlockTime is target frequency of blocks production
	BlockTime *common.Duration `json:"blockTime,omitempty"`

	// BlockTimeDrift defines the time slot in which a new block can be created
	BlockTimeDrift *uint64 `json:"blockTimeDrift,omitempty"`
}

ForkParams hard-coded fork params

func (*ForkParams) Copy added in v1.3.1

func (fp *ForkParams) Copy() *ForkParams

Copy creates a deep copy of ForkParams

type HandlerContainer added in v1.3.2

type HandlerContainer struct {
	// ID represents an auto-incremented identifier for a handler
	ID uint
	// Handler represents an actual event handler
	Handler interface{}
}

HandlerContainer keeps id of a handler and actual handler

type HandlerDesc

type HandlerDesc string

HandlerDesc gives description for the handler eq: "extra", "proposer_calculator", etc

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL