iotex-core: Index | Files | Directories

package execution

import ""


Package Files



const (
    // ExecutionSizeLimit is the maximum size of execution allowed
    ExecutionSizeLimit = 32 * 1024

type Protocol Uses

type Protocol struct {
    // contains filtered or unexported fields

Protocol defines the protocol of handling executions

func FindProtocol Uses

func FindProtocol(registry *protocol.Registry) *Protocol

FindProtocol finds the registered protocol from registry

func NewProtocol Uses

func NewProtocol(getBlockHash evm.GetBlockHash, depostGas evm.DepositGas) *Protocol

NewProtocol instantiates the protocol of exeuction

func (*Protocol) ForceRegister Uses

func (p *Protocol) ForceRegister(r *protocol.Registry) error

ForceRegister registers the protocol with a unique ID and force replacing the previous protocol if it exists

func (*Protocol) Handle Uses

func (p *Protocol) Handle(ctx context.Context, act action.Action, sm protocol.StateManager) (*action.Receipt, error)

Handle handles an execution

func (*Protocol) Name Uses

func (p *Protocol) Name() string

Name returns the name of protocol

func (*Protocol) ReadState Uses

func (p *Protocol) ReadState(context.Context, protocol.StateReader, []byte, ...[]byte) ([]byte, error)

ReadState read the state on blockchain via protocol

func (*Protocol) Register Uses

func (p *Protocol) Register(r *protocol.Registry) error

Register registers the protocol with a unique ID

func (*Protocol) Validate Uses

func (p *Protocol) Validate(_ context.Context, act action.Action, _ protocol.StateReader) error

Validate validates an execution



Package execution imports 9 packages (graph) and is imported by 1 packages. Updated 2020-07-10. Refresh now. Tools for package owners.