Versions in this module Expand all Collapse all v1 v1.999.0 Nov 17, 2022 Changes in this version + const CannotGetAllBlsKeysFromRegistrationData + const CannotGetOrCreateRegistrationData + const InsufficientGasLimit + const StakeNotEnabled + const TransactionValueMustBeZero + const UnBondNotEnabled + const UnStakeNotEnabled + var DelegationManagerSCAddress = []byte + var ESDTSCAddress = []byte + var EndOfEpochAddress = []byte + var ErrBLSPublicKeyAlreadyJailed = errors.New("bls public key already jailed") + var ErrBLSPublicKeyMismatch = errors.New("public key mismatch") + var ErrBLSPublicKeyMissmatch = errors.New("public key missmatch") + var ErrCallValueMustBeZero = errors.New("call value must be zero") + var ErrCouldNotCreateNewTokenIdentifier = errors.New("token identifier could not be created") + var ErrDataNotFoundUnderKey = errors.New("data was not found under requested key") + var ErrDuplicatesFoundInArguments = errors.New("duplicates found in arguments") + var ErrElementNotFound = errors.New("element was not found") + var ErrEmptyStorage = errors.New("storage is nil for given key") + var ErrIncorrectConfig = errors.New("config incorrect") + var ErrInputArgsIsNil = errors.New("input system smart contract arguments are nil") + var ErrInputCallValueIsNil = errors.New("input value for system smart contract is nil") + var ErrInputCallerAddrIsNil = errors.New("input called address for system smart contract is nil") + var ErrInputFunctionIsNil = errors.New("input function for system smart contract is nil") + var ErrInputRecipientAddrIsNil = errors.New("input recipient address for system smart contract is nil") + var ErrInvalidAddress = errors.New("invalid address") + var ErrInvalidArgument = errors.New("invalid argument") + var ErrInvalidBLSKeys = errors.New("invalid bls keys") + var ErrInvalidBaseIssuingCost = errors.New("invalid base issuing cost") + var ErrInvalidCaller = errors.New("the function was called by a not authorized user") + var ErrInvalidDelegationSCConfig = errors.New("invalid delegation sc config") + var ErrInvalidEndOfEpochAccessAddress = errors.New("invalid end of epoch access address") + var ErrInvalidGenesisTotalSupply = errors.New("invalid genesis total supply cost") + var ErrInvalidGovernanceSCAddress = errors.New("invalid governance smart contract address") + var ErrInvalidJailAccessAddress = errors.New("invalid jailing access address") + var ErrInvalidMaxNumberOfNodes = errors.New("invalid number of max number of nodes") + var ErrInvalidMinCreationDeposit = errors.New("invalid min creation deposit") + var ErrInvalidMinStakeValue = errors.New("invalid min stake value") + var ErrInvalidMinStepValue = errors.New("invalid min step value") + var ErrInvalidMinUnstakeTokensValue = errors.New("invalid min unstake tokens value") + var ErrInvalidNodePrice = errors.New("invalid node price") + var ErrInvalidNumOfArguments = errors.New("invalid number of arguments") + var ErrInvalidNumOfInitialWhiteListedAddress = errors.New("0 initial whiteListed addresses provided to the governance contract") + var ErrInvalidNumberOfDecimals = errors.New("invalid number of decimals") + var ErrInvalidStakingAccessAddress = errors.New("invalid staking access address") + var ErrInvalidStartEndVoteNonce = errors.New("invalid start/end vote nonce") + var ErrInvalidUnJailCost = errors.New("invalid unjail cost") + var ErrInvalidWaitingList = errors.New("invalid waiting list") + var ErrKeyAlreadyRegistered = errors.New("bls key already registered") + var ErrNFTCreateRoleAlreadyExists = errors.New("NFT create role already exists") + var ErrNegativeBleedPercentagePerRound = errors.New("negative bleed percentage per round") + var ErrNegativeInitialStakeValue = errors.New("initial stake value is negative") + var ErrNegativeMaximumPercentageToBleed = errors.New("negative maximum percentage to bleed") + var ErrNegativeOrZeroInitialSupply = errors.New("negative initial supply was provided") + var ErrNilAddressPubKeyConverter = errors.New("nil address public key converter") + var ErrNilArgumentsParser = errors.New("nil arguments parser") + var ErrNilBlockchainHook = errors.New("blockchain hook is nil") + var ErrNilChanceComputer = errors.New("nil chance computer") + var ErrNilCryptoHook = errors.New("crypto hook is nil") + var ErrNilEconomicsData = errors.New("nil economics data") + var ErrNilEndOfEpochSmartContractAddress = errors.New("nil end of epoch smart contract address") + var ErrNilEpochNotifier = errors.New("nil EpochNotifier") + var ErrNilGasSchedule = errors.New("nil gas schedule") + var ErrNilHasher = errors.New("nil Hasher") + var ErrNilKeyGenerator = errors.New("nil key generator") + var ErrNilMarshalizer = errors.New("nil Marshalizer") + var ErrNilMessageSignVerifier = errors.New("nil message sign verifier") + var ErrNilNodesConfigProvider = errors.New("nil nodes config provider") + var ErrNilOrEmptyKey = errors.New("nil or empty key") + var ErrNilPublicKey = errors.New("nil public key") + var ErrNilShardCoordinator = errors.New("nil shard coordinator") + var ErrNilSingleSigner = errors.New("nil single signer") + var ErrNilStakingSmartContractAddress = errors.New("nil staking smart contract address") + var ErrNilSystemContractsContainer = errors.New("system contract container is nil") + var ErrNilSystemEnvironmentInterface = errors.New("system environment interface is nil") + var ErrNilSystemSCConfig = errors.New("nil system sc config") + var ErrNilVMType = errors.New("vm type is nil") + var ErrNilValidatorAccountsDB = errors.New("nil validator accounts DB") + var ErrNilValidatorSmartContractAddress = errors.New("nil validator smart contract address") + var ErrNoTickerWithGivenName = errors.New("no ticker with given name") + var ErrNotEnoughArgumentsToStake = errors.New("not enough arguments to stake") + var ErrNotEnoughGas = errors.New("not enough gas") + var ErrNotEnoughInitialOwnerFunds = errors.New("not enough initial owner funds") + var ErrOwnerCannotUnDelegate = errors.New("owner cannot undelegate, contract still active") + var ErrProposalNotFound = errors.New("proposal was not found in storage") + var ErrRedelegateValueBelowMinimum = errors.New(...) + var ErrTickerNameNotValid = errors.New("ticker name is not valid") + var ErrTokenNameNotHumanReadable = errors.New("token name is not human readable") + var ErrUnknownSystemSmartContract = errors.New("missing system smart contract on selected address") + var ErrVotedForAnExpiredProposal = errors.New("voting period is over for this proposal") + var ErrVotingNotStartedForProposal = errors.New("voting has not yet started for this proposal") + var ErrWrongRewardAddress = errors.New("wrong reward address") + var FirstDelegationSCAddress = []byte + var GovernanceSCAddress = []byte + var JailingAddress = []byte + var StakingSCAddress = []byte + var ValidatorSCAddress = []byte + type ArgumentsParser interface + IsInterfaceNil func() bool + ParseData func(data string) (string, [][]byte, error) + type BaseOperationCost struct + AoTPreparePerByte uint64 + CompilePerByte uint64 + DataCopyPerByte uint64 + GetCode uint64 + PersistPerByte uint64 + ReleasePerByte uint64 + StorePerByte uint64 + type BlockchainHook interface + Close func() error + CurrentEpoch func() uint32 + CurrentNonce func() uint64 + CurrentRandomSeed func() []byte + CurrentRound func() uint64 + GetCode func(account vmcommon.UserAccountHandler) []byte + GetShardOfAddress func(address []byte) uint32 + GetSnapshot func() int + GetStorageData func(accountAddress []byte, index []byte) ([]byte, error) + GetUserAccount func(address []byte) (vmcommon.UserAccountHandler, error) + IsPayable func(sndAddress []byte, recvAddress []byte) (bool, error) + IsSmartContract func(address []byte) bool + NumberOfShards func() uint32 + RevertToSnapshot func(snapshot int) error + type BuiltInCost struct + ChangeOwnerAddress uint64 + ClaimDeveloperRewards uint64 + ESDTBurn uint64 + ESDTLocalBurn uint64 + ESDTLocalMint uint64 + ESDTNFTAddQuantity uint64 + ESDTNFTAddUri uint64 + ESDTNFTBurn uint64 + ESDTNFTChangeCreateOwner uint64 + ESDTNFTCreate uint64 + ESDTNFTMultiTransfer uint64 + ESDTNFTTransfer uint64 + ESDTNFTUpdateAttributes uint64 + ESDTTransfer uint64 + SaveKeyValue uint64 + SaveUserName uint64 + type ContextHandler interface + AddCode func(addr []byte, code []byte) + AddTxValueToSmartContract func(value *big.Int, scAddress []byte) + CleanCache func() + CreateVMOutput func() *vmcommon.VMOutput + GetContract func(address []byte) (SystemSmartContract, error) + GetReturnMessage func() string + SetGasProvided func(gasProvided uint64) + SetSCAddress func(addr []byte) + SetSystemSCContainer func(scContainer SystemSCContainer) error + type EconomicsHandler interface + GenesisTotalSupply func() *big.Int + IsInterfaceNil func() bool + type EpochNotifier interface + CheckEpoch func(header data.HeaderHandler) + CurrentEpoch func() uint32 + IsInterfaceNil func() bool + RegisterNotifyHandler func(handler vmcommon.EpochSubscriberHandler) + type GasCost struct + BaseOperationCost BaseOperationCost + BuiltInCost BuiltInCost + MetaChainSystemSCsCost MetaChainSystemSCsCost + type MessageSignVerifier interface + IsInterfaceNil func() bool + Verify func(message []byte, signedMessage []byte, pubKey []byte) error + type MetaChainSystemSCsCost struct + ChangeRewardAddress uint64 + ChangeValidatorKeys uint64 + Claim uint64 + CloseProposal uint64 + DelegateVote uint64 + DelegationMgrOps uint64 + DelegationOps uint64 + ESDTIssue uint64 + ESDTOperations uint64 + FixWaitingListSize uint64 + Get uint64 + GetAllNodeStates uint64 + Proposal uint64 + RevokeVote uint64 + Stake uint64 + UnBond uint64 + UnBondTokens uint64 + UnJail uint64 + UnStake uint64 + UnStakeTokens uint64 + ValidatorToDelegation uint64 + Vote uint64 + type NodesConfigProvider interface + IsInterfaceNil func() bool + MinNumberOfNodes func() uint32 + MinNumberOfNodesWithHysteresis func() uint32 + type SystemEI interface + AddLogEntry func(entry *vmcommon.LogEntry) + AddReturnMessage func(msg string) + BlockChainHook func() BlockchainHook + CanUnJail func(blsKey []byte) bool + CleanStorageUpdates func() + CryptoHook func() vmcommon.CryptoHook + DeploySystemSC func(baseContract []byte, newAddress []byte, ownerAddress []byte, ...) (vmcommon.ReturnCode, error) + ExecuteOnDestContext func(destination []byte, sender []byte, value *big.Int, input []byte) (*vmcommon.VMOutput, error) + Finish func(value []byte) + GasLeft func() uint64 + GetBalance func(addr []byte) *big.Int + GetStorage func(key []byte) []byte + GetStorageFromAddress func(address []byte, key []byte) []byte + IsBadRating func(blsKey []byte) bool + IsInterfaceNil func() bool + IsValidator func(blsKey []byte) bool + SendGlobalSettingToAll func(sender []byte, input []byte) + SetStorage func(key []byte, value []byte) + SetStorageForAddress func(address []byte, key []byte, value []byte) + StatusFromValidatorStatistics func(blsKey []byte) string + Transfer func(destination []byte, sender []byte, value *big.Int, input []byte, ...) error + UseGas func(gasToConsume uint64) error + type SystemSCContainer interface + Add func(key []byte, val SystemSmartContract) error + Get func(key []byte) (SystemSmartContract, error) + IsInterfaceNil func() bool + Keys func() [][]byte + Len func() int + Remove func(key []byte) + Replace func(key []byte, val SystemSmartContract) error + type SystemSCContainerFactory interface + Create func() (SystemSCContainer, error) + CreateForGenesis func() (SystemSCContainer, error) + IsInterfaceNil func() bool + type SystemSmartContract interface + CanUseContract func() bool + Execute func(args *vmcommon.ContractCallInput) vmcommon.ReturnCode + IsInterfaceNil func() bool + SetNewGasCost func(gasCost GasCost)