Documentation ¶
Index ¶
- Variables
- func NewIntermediateProcessorsContainerFactory(shardCoordinator sharding.Coordinator, marshalizer marshal.Marshalizer, ...) (*intermediateProcessorsContainerFactory, error)
- func NewPreProcessorsContainerFactory(shardCoordinator sharding.Coordinator, store dataRetriever.StorageService, ...) (*preProcessorsContainerFactory, error)
- func NewVMContainerFactory(args ArgVMContainerFactory) (*vmContainerFactory, error)
- type ArgVMContainerFactory
Constants ¶
This section is empty.
Variables ¶
var ErrEmptyVersionsByEpochsList = errors.New("empty versions by epochs list")
ErrEmptyVersionsByEpochsList signals that an empty versions by epochs list was provided
var ErrInvalidVersionOnEpochValues = errors.New("invalid version provided on epoch values")
ErrInvalidVersionOnEpochValues signals that the version element is not accepted because the epoch values are invalid
var ErrInvalidVersionStringTooLong = errors.New("invalid version provided: string too large")
ErrInvalidVersionStringTooLong signals that the version element is not accepted because it contains too large strings
Functions ¶
func NewIntermediateProcessorsContainerFactory ¶
func NewIntermediateProcessorsContainerFactory( shardCoordinator sharding.Coordinator, marshalizer marshal.Marshalizer, hasher hashing.Hasher, pubkeyConverter core.PubkeyConverter, store dataRetriever.StorageService, poolsHolder dataRetriever.PoolsHolder, economicsFee process.FeeHandler, ) (*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, pubkeyConverter core.PubkeyConverter, accounts state.AccountsAdapter, requestHandler process.RequestHandler, txProcessor process.TransactionProcessor, scProcessor process.SmartContractProcessor, scResultProcessor process.SmartContractResultProcessor, rewardsTxProcessor process.RewardTransactionProcessor, economicsFee process.FeeHandler, gasHandler process.GasHandler, blockTracker preprocess.BlockTracker, blockSizeComputation preprocess.BlockSizeComputationHandler, balanceComputation preprocess.BalanceComputationHandler, enableEpochsHandler common.EnableEpochsHandler, txTypeHandler process.TxTypeHandler, scheduledTxsExecutionHandler process.ScheduledTxsExecutionHandler, processedMiniBlocksTracker process.ProcessedMiniBlocksTracker, ) (*preProcessorsContainerFactory, error)
NewPreProcessorsContainerFactory is responsible for creating a new preProcessors factory object
func NewVMContainerFactory ¶
func NewVMContainerFactory(args ArgVMContainerFactory) (*vmContainerFactory, error)
NewVMContainerFactory is responsible for creating a new virtual machine factory object
Types ¶
type ArgVMContainerFactory ¶
type ArgVMContainerFactory struct { Config config.VirtualMachineConfig BlockGasLimit uint64 GasSchedule core.GasScheduleNotifier EpochNotifier process.EpochNotifier EnableEpochsHandler vmcommon.EnableEpochsHandler WasmVMChangeLocker common.Locker ESDTTransferParser vmcommon.ESDTTransferParser BuiltInFunctions vmcommon.BuiltInFunctionContainer BlockChainHook process.BlockChainHookHandler Hasher hashing.Hasher }
ArgVMContainerFactory defines the arguments needed to the new VM factory