host

package
v0.0.0-...-33e7cb4 Latest Latest
Warning

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

Go to latest
Published: Sep 29, 2023 License: GPL-3.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var MaximumWasmerInstanceCount = uint64(10)

Functions

func AddFinishData

func AddFinishData(vmOutput *vmcommon.VMOutput, data []byte)

AddFinishData appends the provided []byte to the ReturnData of the given vmOutput

func AddNewOutputAccount

func AddNewOutputAccount(vmOutput *vmcommon.VMOutput, address []byte, balanceDelta int64, data []byte) *vmcommon.OutputAccount

AddNewOutputAccount creates a new vmcommon.OutputAccount from the provided arguments and adds it to OutputAccounts of the provided vmOutput

func DefaultTestArwen

func DefaultTestArwen(tb testing.TB, blockchain vmcommon.BlockchainHook, crypto vmcommon.CryptoHook) (*vmHost, error)

func DefaultTestArwenForCall

func DefaultTestArwenForCall(tb testing.TB, code []byte, balance *big.Int) (*vmHost, *mock.BlockchainHookStub)

func DefaultTestArwenForDeployment

func DefaultTestArwenForDeployment(t *testing.T, ownerNonce uint64, newAddress []byte) *vmHost

DefaultTestArwenForDeployment creates an Arwen vmHost configured for testing deployments

func DefaultTestArwenForTwoSCs

func DefaultTestArwenForTwoSCs(t *testing.T, parentCode []byte, childCode []byte, parentSCBalance *big.Int) (*vmHost, *mock.BlockchainHookStub)

DefaultTestArwenForTwoSCs creates an Arwen vmHost configured for testing calls between 2 SmartContracts

func DefaultTestContractCallInput

func DefaultTestContractCallInput() *vmcommon.ContractCallInput

DefaultTestContractCallInput creates a vmcommon.ContractCallInput struct with default values

func DefaultTestContractCreateInput

func DefaultTestContractCreateInput() *vmcommon.ContractCreateInput

DefaultTestContractCreateInput creates a vmcommon.ContractCreateInput struct with default values

func GetSCCode

func GetSCCode(fileName string) []byte

GetSCCode retrieves the bytecode of a WASM module from a file

func GetTestSCCode

func GetTestSCCode(scName string, prefixToTestSCs string) []byte

GetTestSCCode retrieves the bytecode of a WASM testing module

func LoadGasScheduleConfig

func LoadGasScheduleConfig(filepath string) (config.GasScheduleMap, error)

func LoadTomlFile

func LoadTomlFile(dest interface{}, relativePath string) error

LoadTomlFile method to open and decode toml file

func LoadTomlFileToMap

func LoadTomlFileToMap(relativePath string) (map[string]interface{}, error)

LoadTomlFileToMap opens and decodes a toml file as a map[string]interface{}

func MakeVMOutput

func MakeVMOutput() *vmcommon.VMOutput

MakeVMOutput creates a vmcommon.VMOutput struct with default values

func NewArwenVM

func NewArwenVM(
	blockChainHook vmcommon.BlockchainHook,
	cryptoHook vmcommon.CryptoHook,
	hostParameters *arwen.VMHostParameters,
) (*vmHost, error)

NewArwenVM creates a new Arwen vmHost

func OpenFile

func OpenFile(relativePath string) (*os.File, error)

OpenFile method opens the file from given path - does not close the file

func SetStorageUpdate

func SetStorageUpdate(account *vmcommon.OutputAccount, key []byte, data []byte)

SetStorageUpdate sets a storage update to the provided vmcommon.OutputAccount

func SetStorageUpdateStrings

func SetStorageUpdateStrings(account *vmcommon.OutputAccount, key string, data string)

SetStorageUpdateStrings sets a storage update to the provided vmcommon.OutputAccount, from string arguments

func TryCatch

func TryCatch(try TryFunction, catch CatchFunction, catchFallbackMessage string)

TryCatch simulates a try/catch block using golang's recover() functionality

Types

type CatchFunction

type CatchFunction func(error)

CatchFunction corresponds to the catch() part of a try / catch block

type TryFunction

type TryFunction func()

TryFunction corresponds to the try() part of a try / catch block

Jump to

Keyboard shortcuts

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