Help us shape the future of Go! Take the 2026 Go Developer Survey

query

package
v0.38.3 Latest Latest
Warning

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

Go to latest
Published: Feb 19, 2025 License: AGPL-3.0 Imports: 17 Imported by: 1

Documentation

Index

Constants

View Source
const (
	DefaultLogTimeThreshold    = 1 * time.Second
	DefaultExecutionTimeLimit  = 10 * time.Second
	DefaultMaxErrorMessageSize = 1000 // 1000 chars
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Executor

type Executor interface {
	ExecuteScript(
		ctx context.Context,
		script []byte,
		arguments [][]byte,
		blockHeader *flow.Header,
		snapshot snapshot.StorageSnapshot,
	) (
		[]byte,
		uint64,
		error,
	)

	GetAccount(
		ctx context.Context,
		addr flow.Address,
		header *flow.Header,
		snapshot snapshot.StorageSnapshot,
	) (
		*flow.Account,
		error,
	)

	GetAccountBalance(
		ctx context.Context,
		addr flow.Address,
		header *flow.Header,
		snapshot snapshot.StorageSnapshot,
	) (
		uint64,
		error,
	)

	GetAccountAvailableBalance(
		ctx context.Context,
		addr flow.Address,
		header *flow.Header,
		snapshot snapshot.StorageSnapshot,
	) (
		uint64,
		error,
	)

	GetAccountKeys(
		ctx context.Context,
		addr flow.Address,
		header *flow.Header,
		snapshot snapshot.StorageSnapshot,
	) (
		[]flow.AccountPublicKey,
		error,
	)

	GetAccountKey(
		ctx context.Context,
		addr flow.Address,
		keyIndex uint32,
		header *flow.Header,
		snapshot snapshot.StorageSnapshot,
	) (
		*flow.AccountPublicKey,
		error,
	)
}

type QueryConfig

type QueryConfig struct {
	LogTimeThreshold    time.Duration
	ExecutionTimeLimit  time.Duration
	ComputationLimit    uint64
	MaxErrorMessageSize int
}

func NewDefaultConfig

func NewDefaultConfig() QueryConfig

type QueryExecutor

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

func NewQueryExecutor

func NewQueryExecutor(
	config QueryConfig,
	logger zerolog.Logger,
	metrics module.ExecutionMetrics,
	vm fvm.VM,
	vmCtx fvm.Context,
	derivedChainData *derived.DerivedChainData,
	protocolStateSnapshot protocol.SnapshotExecutionSubsetProvider,
) *QueryExecutor

func (*QueryExecutor) ExecuteScript

func (e *QueryExecutor) ExecuteScript(
	ctx context.Context,
	script []byte,
	arguments [][]byte,
	blockHeader *flow.Header,
	snapshot snapshot.StorageSnapshot,
) (
	encodedValue []byte,
	computationUsed uint64,
	err error,
)

func (*QueryExecutor) GetAccount

func (e *QueryExecutor) GetAccount(
	_ context.Context,
	address flow.Address,
	blockHeader *flow.Header,
	snapshot snapshot.StorageSnapshot,
) (
	*flow.Account,
	error,
)

func (*QueryExecutor) GetAccountAvailableBalance added in v0.36.1

func (e *QueryExecutor) GetAccountAvailableBalance(
	_ context.Context,
	address flow.Address,
	blockHeader *flow.Header,
	snapshot snapshot.StorageSnapshot,
) (uint64, error)

func (*QueryExecutor) GetAccountBalance added in v0.35.17

func (e *QueryExecutor) GetAccountBalance(
	_ context.Context,
	address flow.Address,
	blockHeader *flow.Header,
	snapshot snapshot.StorageSnapshot,
) (uint64, error)

func (*QueryExecutor) GetAccountKey added in v0.36.1

func (e *QueryExecutor) GetAccountKey(
	_ context.Context,
	address flow.Address,
	keyIndex uint32,
	blockHeader *flow.Header,
	snapshot snapshot.StorageSnapshot,
) (*flow.AccountPublicKey, error)

func (*QueryExecutor) GetAccountKeys added in v0.35.17

func (e *QueryExecutor) GetAccountKeys(
	_ context.Context,
	address flow.Address,
	blockHeader *flow.Header,
	snapshot snapshot.StorageSnapshot,
) ([]flow.AccountPublicKey, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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