computer

package
v0.23.4 Latest Latest
Warning

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

Go to latest
Published: Dec 9, 2021 License: AGPL-3.0 Imports: 21 Imported by: 4

Documentation

Index

Constants

View Source
const MaxTransactionErrorStringSize = 1000 // 1000 chars
View Source
const SystemChunkEventCollectionMaxSize = 256_000_000 // ~256MB
View Source
const SystemChunkLedgerIntractionLimit = 1_000_000_000 // ~1GB

Variables

This section is empty.

Functions

func SystemChunkContext added in v0.21.1

func SystemChunkContext(vmCtx fvm.Context, logger zerolog.Logger) fvm.Context

Types

type BlockComputer

type BlockComputer interface {
	ExecuteBlock(context.Context, *entity.ExecutableBlock, state.View, *programs.Programs) (*execution.ComputationResult, error)
}

A BlockComputer executes the transactions in a block.

func NewBlockComputer

func NewBlockComputer(
	vm VirtualMachine,
	vmCtx fvm.Context,
	metrics module.ExecutionMetrics,
	tracer module.Tracer,
	logger zerolog.Logger,
	committer ViewCommitter,
) (BlockComputer, error)

NewBlockComputer creates a new block executor.

type ViewCommitter added in v0.16.0

type ViewCommitter interface {
	// CommitView commits a views' register delta and collects proofs
	CommitView(state.View, flow.StateCommitment) (flow.StateCommitment, []byte, *ledger.TrieUpdate, error)
}

ViewCommitter commits views's deltas to the ledger and collects the proofs

type VirtualMachine

type VirtualMachine interface {
	Run(fvm.Context, fvm.Procedure, state.View, *programs.Programs) error
}

VirtualMachine runs procedures

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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