process

package
v1.5.14 Latest Latest
Warning

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

Go to latest
Published: Oct 31, 2023 License: GPL-3.0 Imports: 66 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateMetaGenesisBlock

func CreateMetaGenesisBlock(
	arg ArgsGenesisBlockCreator,
	body *block.Body,
	nodesListSplitter genesis.NodesListSplitter,
	hardForkBlockProcessor update.HardForkBlockProcessor,
) (data.MetaHeaderHandler, [][]byte, *genesis.IndexingData, error)

CreateMetaGenesisBlock will create a metachain genesis block

func CreateShardGenesisBlock

func CreateShardGenesisBlock(
	arg ArgsGenesisBlockCreator,
	body *block.Body,
	nodesListSplitter genesis.NodesListSplitter,
	hardForkBlockProcessor update.HardForkBlockProcessor,
) (data.HeaderHandler, [][]byte, *genesis.IndexingData, error)

CreateShardGenesisBlock will create a shard genesis block

func NewGenesisBlockCreator

func NewGenesisBlockCreator(arg ArgsGenesisBlockCreator) (*genesisBlockCreator, error)

NewGenesisBlockCreator creates a new genesis block creator instance able to create genesis blocks on all initial shards

Types

type ArgsGenesisBlockCreator

type ArgsGenesisBlockCreator struct {
	GenesisTime          uint64
	StartEpochNum        uint32
	Data                 dataComponentsHandler
	Core                 coreComponentsHandler
	Accounts             state.AccountsAdapter
	ValidatorAccounts    state.AccountsAdapter
	InitialNodesSetup    genesis.InitialNodesHandler
	Economics            process.EconomicsDataHandler
	ShardCoordinator     sharding.Coordinator
	AccountsParser       genesis.AccountsParser
	SmartContractParser  genesis.InitialSmartContractParser
	GasSchedule          core.GasScheduleNotifier
	TxLogsProcessor      process.TransactionLogProcessor
	VirtualMachineConfig config.VirtualMachineConfig
	HardForkConfig       config.HardforkConfig
	TrieStorageManagers  map[string]common.StorageManager
	SystemSCConfig       config.SystemSmartContractsConfig
	EpochConfig          *config.EpochConfig
	ImportStartHandler   update.ImportStartHandler
	WorkingDir           string
	BlockSignKeyGen      crypto.KeyGenerator

	GenesisNodePrice *big.Int
	GenesisString    string
	// contains filtered or unexported fields
}

ArgsGenesisBlockCreator holds the arguments which are needed to create a genesis block

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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