evm

package module
v2.3.6 Latest Latest
Warning

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

Go to latest
Published: Sep 14, 2024 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

Package evm for evm core runtime

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type InstancesManager

type InstancesManager struct {
}

InstancesManager manager of evm instances

func (*InstancesManager) AfterSchedule added in v2.3.0

func (*InstancesManager) AfterSchedule(blockFingerprint string, blockHeight uint64)

AfterSchedule do sth. after schedule a block

func (*InstancesManager) BeforeSchedule added in v2.3.0

func (*InstancesManager) BeforeSchedule(blockFingerprint string, blockHeight uint64)

BeforeSchedule do sth. before schedule a block

func (*InstancesManager) NewRuntimeInstance

func (*InstancesManager) NewRuntimeInstance(txSimContext protocol.TxSimContext, chainId, method string, codePath string,
	contract *commonPb.Contract, byteCode []byte, log protocol.Logger) (protocol.RuntimeInstance, error)

NewRuntimeInstance new an evm instance

func (*InstancesManager) StartVM added in v2.1.1

func (*InstancesManager) StartVM() error

StartVM start vm

func (*InstancesManager) StopVM added in v2.1.1

func (*InstancesManager) StopVM() error

StopVM stop vm

type RuntimeInstance

type RuntimeInstance struct {
	Method  string // invoke contract method
	ChainId string // chain id
	//Address       *evmutils.Int      //address
	Contract      *commonPb.Contract // contract info
	Log           protocol.Logger
	TxSimContext  protocol.TxSimContext
	ContractEvent []*commonPb.ContractEvent
}

RuntimeInstance evm runtime

func (*RuntimeInstance) Invoke

func (r *RuntimeInstance) Invoke(contract *commonPb.Contract, method string, byteCode []byte,
	parameters map[string][]byte, txSimContext protocol.TxSimContext, gasUsed uint64) (
	contractResult *commonPb.ContractResult, specialTxType protocol.ExecOrderTxType)

Invoke contract by call vm, implement protocol.RuntimeInstance

Directories

Path Synopsis
math
Package math provides integer math utilities.
Package math provides integer math utilities.
precompiledContracts
* Copyright 2020 The SealEVM Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License.
* Copyright 2020 The SealEVM Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License.
Package test provides mock objects and utilities for testing tx_context.
Package test provides mock objects and utilities for testing tx_context.

Jump to

Keyboard shortcuts

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