wasmer

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Nov 10, 2020 License: LGPL-3.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const Name = "wasmer"

Name represents the name of the interpreter

Variables

This section is empty.

Functions

func GetRuntimeImports

func GetRuntimeImports(targetRuntime string) func() (*wasm.Imports, error)

GetRuntimeImports ...

func ImportsLegacyNodeRuntime

func ImportsLegacyNodeRuntime() (*wasm.Imports, error)

ImportsLegacyNodeRuntime returns the wasm imports for the substrate v0.6 node runtime

func ImportsNodeRuntime

func ImportsNodeRuntime() (*wasm.Imports, error)

ImportsNodeRuntime returns the imports for the v0.8 runtime

func ImportsTestRuntime

func ImportsTestRuntime() (*wasm.Imports, error)

ImportsTestRuntime registers the wasm imports for the v0.6 substrate test runtime

Types

type Config

type Config struct {
	runtime.InstanceConfig
	Imports func() (*wasm.Imports, error)
}

Config represents a wasmer configuration

type Instance

type Instance struct {
	// contains filtered or unexported fields
}

Instance represents a v0.8 runtime go-wasmer instance

func NewInstance

func NewInstance(code []byte, cfg *Config) (*Instance, error)

NewInstance instantiates a runtime from raw wasm bytecode

func NewInstanceFromFile

func NewInstanceFromFile(fp string, cfg *Config) (*Instance, error)

NewInstanceFromFile instantiates a runtime from a .wasm file

func NewTestInstance

func NewTestInstance(t *testing.T, targetRuntime string) *Instance

NewTestInstance will create a new runtime instance using the given target runtime

func NewTestInstanceWithRole

func NewTestInstanceWithRole(t *testing.T, targetRuntime string, role byte) *Instance

NewTestInstanceWithRole returns a test runtime with given role value

func NewTestInstanceWithTrie

func NewTestInstanceWithTrie(t *testing.T, targetRuntime string, tt *trie.Trie, lvl log.Lvl) *Instance

NewTestInstanceWithTrie will create a new runtime (polkadot/test) with the supplied trie as the storage

func (*Instance) ApplyExtrinsic

func (in *Instance) ApplyExtrinsic(data types.Extrinsic) ([]byte, error)

ApplyExtrinsic calls runtime API function BlockBuilder_apply_extrinsic

func (*Instance) BabeConfiguration

func (in *Instance) BabeConfiguration() (*types.BabeConfiguration, error)

BabeConfiguration gets the configuration data for BABE from the runtime

func (*Instance) CheckInherents

func (in *Instance) CheckInherents()

func (*Instance) Exec

func (in *Instance) Exec(function string, data []byte) ([]byte, error)

Exec calls the given function with the given data

func (*Instance) ExecuteBlock

func (in *Instance) ExecuteBlock(block *types.Block) ([]byte, error)

ExecuteBlock calls runtime function Core_execute_block

func (*Instance) FinalizeBlock

func (in *Instance) FinalizeBlock() (*types.Header, error)

FinalizeBlock calls runtime API function BlockBuilder_finalize_block

func (*Instance) GenerateSessionKeys

func (in *Instance) GenerateSessionKeys()

func (*Instance) GrandpaAuthorities

func (in *Instance) GrandpaAuthorities() ([]*types.Authority, error)

GrandpaAuthorities returns the genesis authorities from the runtime

func (*Instance) InherentExtrinsics

func (in *Instance) InherentExtrinsics(data []byte) ([]byte, error)

InherentExtrinsics calls runtime API function BlockBuilder_inherent_extrinsics

func (*Instance) InitializeBlock

func (in *Instance) InitializeBlock(header *types.Header) error

InitializeBlock calls runtime API function Core_initialize_block

func (*Instance) Legacy

func (in *Instance) Legacy() *LegacyInstance

Legacy returns the instance as a LegacyInstance

func (*Instance) Metadata

func (in *Instance) Metadata() ([]byte, error)

Metadata calls runtime function Metadata_metadata

func (*Instance) NetworkService

func (in *Instance) NetworkService() runtime.BasicNetwork

NetworkService to get referernce to runtime network service

func (*Instance) NodeStorage

func (in *Instance) NodeStorage() runtime.NodeStorage

NodeStorage to get reference to runtime node service

func (*Instance) OffchainWorker

func (in *Instance) OffchainWorker()

func (*Instance) RandomSeed

func (in *Instance) RandomSeed()

func (*Instance) SetContext

func (in *Instance) SetContext(s runtime.Storage)

SetContext sets the runtime's storage. It should be set before calls to the below functions.

func (*Instance) Stop

func (in *Instance) Stop()

Stop func

func (*Instance) ValidateTransaction

func (in *Instance) ValidateTransaction(e types.Extrinsic) (*transaction.Validity, error)

ValidateTransaction runs the extrinsic through runtime function TaggedTransactionQueue_validate_transaction and returns *Validity

func (*Instance) Version

func (in *Instance) Version() (*runtime.VersionAPI, error)

Version calls runtime function Core_Version

type LegacyInstance

type LegacyInstance struct {
	// contains filtered or unexported fields
}

LegacyInstance represents a v0.6 runtime go-wasmer instance

func NewLegacyInstance

func NewLegacyInstance(code []byte, cfg *Config) (*LegacyInstance, error)

NewLegacyInstance instantiates a legacy runtime from raw wasm bytecode

func NewLegacyInstanceFromFile

func NewLegacyInstanceFromFile(fp string, cfg *Config) (*LegacyInstance, error)

NewLegacyInstanceFromFile instantiates a runtime from a .wasm file

func NewTestLegacyInstance

func NewTestLegacyInstance(t *testing.T, targetRuntime string) *LegacyInstance

NewTestLegacyInstance will create a new runtime instance using the given target runtime

func NewTestLegacyInstanceWithRole

func NewTestLegacyInstanceWithRole(t *testing.T, targetRuntime string, role byte) *LegacyInstance

NewTestLegacyInstanceWithRole returns a test runtime with given role value

func NewTestLegacyInstanceWithTrie

func NewTestLegacyInstanceWithTrie(t *testing.T, targetRuntime string, tt *trie.Trie, lvl log.Lvl) *LegacyInstance

NewTestLegacyInstanceWithTrie will create a new runtime (polkadot/test) with the supplied trie as the storage

func (*LegacyInstance) ApplyExtrinsic

func (in *LegacyInstance) ApplyExtrinsic(data types.Extrinsic) ([]byte, error)

ApplyExtrinsic calls runtime API function BlockBuilder_apply_extrinsic

func (*LegacyInstance) BabeConfiguration

func (in *LegacyInstance) BabeConfiguration() (*types.BabeConfiguration, error)

BabeConfiguration gets the configuration data for BABE from the runtime

func (*LegacyInstance) Exec

func (in *LegacyInstance) Exec(function string, data []byte) ([]byte, error)

Exec calls the given function with the given data

func (*LegacyInstance) ExecuteBlock

func (in *LegacyInstance) ExecuteBlock(block *types.Block) ([]byte, error)

ExecuteBlock calls runtime function Core_execute_block

func (*LegacyInstance) FinalizeBlock

func (in *LegacyInstance) FinalizeBlock() (*types.Header, error)

FinalizeBlock calls runtime API function BlockBuilder_finalize_block

func (*LegacyInstance) GrandpaAuthorities

func (in *LegacyInstance) GrandpaAuthorities() ([]*types.Authority, error)

GrandpaAuthorities returns the genesis authorities from the runtime

func (*LegacyInstance) InherentExtrinsics

func (in *LegacyInstance) InherentExtrinsics(data []byte) ([]byte, error)

InherentExtrinsics calls runtime API function BlockBuilder_inherent_extrinsics

func (*LegacyInstance) InitializeBlock

func (in *LegacyInstance) InitializeBlock(header *types.Header) error

InitializeBlock calls runtime API function Core_initialize_block

func (*LegacyInstance) Metadata

func (in *LegacyInstance) Metadata() ([]byte, error)

Metadata calls runtime function Metadata_metadata

func (*LegacyInstance) NetworkService

func (in *LegacyInstance) NetworkService() runtime.BasicNetwork

NetworkService to get referernce to runtime network service

func (*LegacyInstance) NodeStorage

func (in *LegacyInstance) NodeStorage() runtime.NodeStorage

NodeStorage to get reference to runtime node service

func (*LegacyInstance) SetContext

func (in *LegacyInstance) SetContext(s runtime.Storage)

SetContext sets the runtime's storage. It should be set before calls to the below functions.

func (*LegacyInstance) Stop

func (in *LegacyInstance) Stop()

Stop func

func (*LegacyInstance) ValidateTransaction

func (in *LegacyInstance) ValidateTransaction(e types.Extrinsic) (*transaction.Validity, error)

ValidateTransaction runs the extrinsic through runtime function TaggedTransactionQueue_validate_transaction and returns *Validity

func (*LegacyInstance) Version

func (in *LegacyInstance) Version() (*runtime.VersionAPI, error)

Version calls runtime function Core_Version

Jump to

Keyboard shortcuts

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