outputs

package
v1.4.2 Latest Latest
Warning

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

Go to latest
Published: Dec 22, 2023 License: MIT Imports: 19 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrGetStepData = errors.New("GetStepData not supported")
	ErrIndexTooBig = errors.New("trace index is greater than max uint64")
)

Functions

func NewOutputAlphabetTraceAccessor added in v1.4.2

func NewOutputAlphabetTraceAccessor(
	logger log.Logger,
	m metrics.Metricer,
	prestateProvider types.PrestateProvider,
	rollupClient OutputRollupClient,
	splitDepth uint64,
	prestateBlock uint64,
	poststateBlock uint64,
) (*trace.Accessor, error)

func NewOutputCannonTraceAccessor added in v1.4.2

func NewOutputCannonTraceAccessor(
	logger log.Logger,
	m metrics.Metricer,
	cfg *config.Config,
	l2Client cannon.L2HeaderSource,
	contract cannon.L1HeadSource,
	prestateProvider types.PrestateProvider,
	rollupClient OutputRollupClient,
	dir string,
	splitDepth uint64,
	prestateBlock uint64,
	poststateBlock uint64,
) (*trace.Accessor, error)

func OutputRootSplitAdapter added in v1.4.2

func OutputRootSplitAdapter(topProvider *OutputTraceProvider, creator ProposalTraceProviderCreator) split.ProviderCreator

Types

type OutputPrestateProvider added in v1.4.2

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

func NewPrestateProvider added in v1.4.2

func NewPrestateProvider(ctx context.Context, logger log.Logger, rollupClient OutputRollupClient, prestateBlock uint64) *OutputPrestateProvider

func (*OutputPrestateProvider) AbsolutePreStateCommitment added in v1.4.2

func (o *OutputPrestateProvider) AbsolutePreStateCommitment(ctx context.Context) (hash common.Hash, err error)

type OutputRollupClient

type OutputRollupClient interface {
	OutputAtBlock(ctx context.Context, blockNum uint64) (*eth.OutputResponse, error)
}

type OutputTraceProvider

type OutputTraceProvider struct {
	types.PrestateProvider
	// contains filtered or unexported fields
}

OutputTraceProvider is a types.TraceProvider implementation that uses output roots for given L2 Blocks as a trace.

func NewTraceProvider

func NewTraceProvider(ctx context.Context, logger log.Logger, rollupRpc string, gameDepth, prestateBlock, poststateBlock uint64) (*OutputTraceProvider, error)

func NewTraceProviderFromInputs

func NewTraceProviderFromInputs(logger log.Logger, prestateProvider types.PrestateProvider, rollupClient OutputRollupClient, gameDepth, prestateBlock, poststateBlock uint64) *OutputTraceProvider

func (*OutputTraceProvider) BlockNumber added in v1.4.2

func (o *OutputTraceProvider) BlockNumber(pos types.Position) (uint64, error)

func (*OutputTraceProvider) Get

func (*OutputTraceProvider) GetStepData

func (o *OutputTraceProvider) GetStepData(_ context.Context, _ types.Position) (prestate []byte, proofData []byte, preimageData *types.PreimageOracleData, err error)

GetStepData is not supported in the OutputTraceProvider.

type ProposalTraceProviderCreator added in v1.4.2

type ProposalTraceProviderCreator func(ctx context.Context, localContext common.Hash, depth uint64, agreed contracts.Proposal, claimed contracts.Proposal) (types.TraceProvider, error)

type ProviderCache added in v1.4.2

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

func NewProviderCache added in v1.4.2

func NewProviderCache(m caching.Metrics, metricsLabel string, creator ProposalTraceProviderCreator) *ProviderCache

func (*ProviderCache) GetOrCreate added in v1.4.2

func (c *ProviderCache) GetOrCreate(ctx context.Context, localContext common.Hash, depth uint64, agreed contracts.Proposal, claimed contracts.Proposal) (types.TraceProvider, error)

Jump to

Keyboard shortcuts

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