intermediate

package
v0.0.2 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: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GenerateInitialPublicKeys

func GenerateInitialPublicKeys(
	baseAddress []byte,
	isForCurrentShard func(address []byte) bool,
) [][]byte

GenerateInitialPublicKeys will create public keys for given shard or for all shards in case of deployment to core.MaxNumShards

func NewDeployLibrarySC

func NewDeployLibrarySC(arg ArgDeployLibrarySC) (*deployLibrarySC, error)

NewDeployLibrarySC returns a new instance of deploy library SC able to deploy library SC that needs to be present on all shards - same contract is deployed core.MaxNumShards == 256 times with addresses which end with all possibilities of the last byte

func NewDeployProcessor

func NewDeployProcessor(arg ArgDeployProcessor) (*deployProcessor, error)

NewDeployProcessor returns a new instance of deploy processor able to deploy SC

func NewNodesListSplitter

func NewNodesListSplitter(
	initialNodesSetup genesis.InitialNodesHandler,
	accountsParser genesis.AccountsParser,
) (*nodesListSplitter, error)

NewNodesListSplitter returns an instance able to split the nodes by some criterias

func NewStandardDelegationProcessor

func NewStandardDelegationProcessor(arg ArgStandardDelegationProcessor) (*standardDelegationProcessor, error)

NewStandardDelegationProcessor returns a new standard delegation processor instance

func NewTxExecutionProcessor

func NewTxExecutionProcessor(
	txProcessor process.TransactionProcessor,
	accounts state.AccountsAdapter,
) (*txExecutionProcessor, error)

NewTxExecutionProcessor is able to execute a transaction

Types

type ArgDeployLibrarySC

type ArgDeployLibrarySC struct {
	Executor         genesis.TxExecutionProcessor
	PubkeyConv       core.PubkeyConverter
	BlockchainHook   process.BlockChainHookHandler
	ShardCoordinator sharding.Coordinator
}

ArgDeployLibrarySC is the argument used to create a deployLibrarySC instance

type ArgDeployProcessor

type ArgDeployProcessor struct {
	Executor       genesis.TxExecutionProcessor
	PubkeyConv     core.PubkeyConverter
	BlockchainHook process.BlockChainHookHandler
	QueryService   external.SCQueryService
}

ArgDeployProcessor is the argument used to create a deployProcessor instance

type ArgStandardDelegationProcessor

type ArgStandardDelegationProcessor struct {
	Executor            genesis.TxExecutionProcessor
	ShardCoordinator    sharding.Coordinator
	AccountsParser      genesis.AccountsParser
	SmartContractParser genesis.InitialSmartContractParser
	NodesListSplitter   genesis.NodesListSplitter
	QueryService        external.SCQueryService
	NodePrice           *big.Int
}

ArgStandardDelegationProcessor is the argument used to construct a standard delegation processor

Jump to

Keyboard shortcuts

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