github.com/onflow/flow-go@v0.35.7-crescendo-preview.23-atree-inlining/engine/execution/engines.go (about)

     1  package execution
     2  
     3  import (
     4  	"context"
     5  
     6  	"github.com/onflow/flow-go/model/flow"
     7  )
     8  
     9  // ScriptExecutor represents the RPC calls that the execution script engine exposes to support the Access Node API calls
    10  type ScriptExecutor interface {
    11  
    12  	// ExecuteScriptAtBlockID executes a script at the given Block id
    13  	// it returns the value, the computation used and the error (if any)
    14  	ExecuteScriptAtBlockID(ctx context.Context, script []byte, arguments [][]byte, blockID flow.Identifier) ([]byte, uint64, error)
    15  
    16  	// GetAccount returns the Account details at the given Block id
    17  	GetAccount(ctx context.Context, address flow.Address, blockID flow.Identifier) (*flow.Account, error)
    18  
    19  	// GetRegisterAtBlockID returns the value of a register at the given Block id (if available)
    20  	GetRegisterAtBlockID(ctx context.Context, owner, key []byte, blockID flow.Identifier) ([]byte, error)
    21  }