metachain

package
v1.7.11 Latest Latest
Warning

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

Go to latest
Published: May 17, 2024 License: GPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewIntermediateProcessorsContainerFactory

func NewIntermediateProcessorsContainerFactory(
	args ArgsNewIntermediateProcessorsContainerFactory,
) (*intermediateProcessorsContainerFactory, error)

NewIntermediateProcessorsContainerFactory is responsible for creating a new intermediate processors factory object

func NewPreProcessorsContainerFactory

func NewPreProcessorsContainerFactory(
	shardCoordinator sharding.Coordinator,
	store dataRetriever.StorageService,
	marshalizer marshal.Marshalizer,
	hasher hashing.Hasher,
	dataPool dataRetriever.PoolsHolder,
	accounts state.AccountsAdapter,
	requestHandler process.RequestHandler,
	txProcessor process.TransactionProcessor,
	scResultProcessor process.SmartContractResultProcessor,
	economicsFee process.FeeHandler,
	gasHandler process.GasHandler,
	blockTracker preprocess.BlockTracker,
	pubkeyConverter core.PubkeyConverter,
	blockSizeComputation preprocess.BlockSizeComputationHandler,
	balanceComputation preprocess.BalanceComputationHandler,
	enableEpochsHandler common.EnableEpochsHandler,
	txTypeHandler process.TxTypeHandler,
	scheduledTxsExecutionHandler process.ScheduledTxsExecutionHandler,
	processedMiniBlocksTracker process.ProcessedMiniBlocksTracker,
	txExecutionOrderHandler common.TxExecutionOrderHandler,
) (*preProcessorsContainerFactory, error)

NewPreProcessorsContainerFactory is responsible for creating a new preProcessors factory object

func NewVMContainerFactory

func NewVMContainerFactory(args ArgsNewVMContainerFactory) (*vmContainerFactory, error)

NewVMContainerFactory is responsible for creating a new virtual machine factory object

Types

type ArgsNewIntermediateProcessorsContainerFactory added in v1.6.0

type ArgsNewIntermediateProcessorsContainerFactory struct {
	ShardCoordinator        sharding.Coordinator
	Marshalizer             marshal.Marshalizer
	Hasher                  hashing.Hasher
	PubkeyConverter         core.PubkeyConverter
	Store                   dataRetriever.StorageService
	PoolsHolder             dataRetriever.PoolsHolder
	EconomicsFee            process.FeeHandler
	EnableEpochsHandler     common.EnableEpochsHandler
	TxExecutionOrderHandler common.TxExecutionOrderHandler
}

ArgsNewIntermediateProcessorsContainerFactory defines the argument list to create a new container factory

type ArgsNewVMContainerFactory

type ArgsNewVMContainerFactory struct {
	ArgBlockChainHook   hooks.ArgBlockChainHook
	Economics           process.EconomicsDataHandler
	MessageSignVerifier vm.MessageSignVerifier
	GasSchedule         core.GasScheduleNotifier
	NodesConfigProvider vm.NodesConfigProvider
	Hasher              hashing.Hasher
	Marshalizer         marshal.Marshalizer
	SystemSCConfig      *config.SystemSmartContractsConfig
	ValidatorAccountsDB state.AccountsAdapter
	UserAccountsDB      state.AccountsAdapter
	ChanceComputer      nodesCoordinator.ChanceComputer
	ShardCoordinator    sharding.Coordinator
	PubkeyConv          core.PubkeyConverter
	BlockChainHook      process.BlockChainHookWithAccountsAdapter
	EnableEpochsHandler common.EnableEpochsHandler
	NodesCoordinator    vm.NodesCoordinator
}

ArgsNewVMContainerFactory defines the arguments needed to create a new VM container factory

Jump to

Keyboard shortcuts

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