attributes

package
v1.14.1 Latest Latest
Warning

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

Go to latest
Published: Oct 8, 2025 License: MIT, MIT Imports: 18 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrCanyonMustHaveWithdrawals       = errors.New("canyon: expected withdrawals in block to be non-nil and empty")
	ErrCanyonWithdrawalsRoot           = errors.New("canyon: expected withdrawalsRoot in block to be default")
	ErrBedrockMustHaveEmptyWithdrawals = errors.New("bedrock: expected withdrawals in attributes to be nil")
	ErrIsthmusMustHaveWithdrawalsRoot  = errors.New("isthmus: expected withdrawalsRoot in block to be non-nil")
	ErrNilBlockOrAttributes            = errors.New("nil attributes or block")
)

Functions

func AttributesMatchBlock

func AttributesMatchBlock(rollupCfg *rollup.Config, attrs *eth.PayloadAttributes, parentHash common.Hash, envelope *eth.ExecutionPayloadEnvelope, l log.Logger) error

AttributesMatchBlock checks if the L2 attributes pre-inputs match the output nil if it is a match. If err is not nil, the error contains the reason for the mismatch

Types

type AttributesHandler

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

func NewAttributesHandler

func NewAttributesHandler(log log.Logger, cfg *rollup.Config, ctx context.Context, l2 L2, engController EngineController) *AttributesHandler

func (*AttributesHandler) AttachEmitter added in v1.8.0

func (eq *AttributesHandler) AttachEmitter(em event.Emitter)

func (*AttributesHandler) ForceReset added in v1.13.6

func (eq *AttributesHandler) ForceReset(ctx context.Context, localUnsafe, crossUnsafe, localSafe, crossSafe, finalized eth.L2BlockRef)

func (*AttributesHandler) OnEvent added in v1.8.0

func (eq *AttributesHandler) OnEvent(ctx context.Context, ev event.Event) bool

type EngineController added in v1.13.6

type EngineController interface {
	// TryUpdatePendingSafe updates the pending safe head if the new reference is newer
	TryUpdatePendingSafe(ctx context.Context, ref eth.L2BlockRef, concluding bool, source eth.L1BlockRef)
	// TryUpdateLocalSafe updates the local safe head if the new reference is newer and concluding
	TryUpdateLocalSafe(ctx context.Context, ref eth.L2BlockRef, concluding bool, source eth.L1BlockRef)
	RequestForkchoiceUpdate(ctx context.Context)
	RequestPendingSafeUpdate(ctx context.Context)
}

EngineController provides direct calls into the EngineController that external components can use instead of emitting events.

type L2

type L2 interface {
	PayloadByNumber(context.Context, uint64) (*eth.ExecutionPayloadEnvelope, error)
}

type MockEngineController added in v1.13.6

type MockEngineController struct {
	mock.Mock
}

func (*MockEngineController) RequestForkchoiceUpdate added in v1.13.6

func (m *MockEngineController) RequestForkchoiceUpdate(ctx context.Context)

func (*MockEngineController) RequestPendingSafeUpdate added in v1.13.6

func (m *MockEngineController) RequestPendingSafeUpdate(ctx context.Context)

func (*MockEngineController) TryUpdateLocalSafe added in v1.13.6

func (m *MockEngineController) TryUpdateLocalSafe(ctx context.Context, ref eth.L2BlockRef, concluding bool, source eth.L1BlockRef)

func (*MockEngineController) TryUpdatePendingSafe added in v1.13.6

func (m *MockEngineController) TryUpdatePendingSafe(ctx context.Context, ref eth.L2BlockRef, concluding bool, source eth.L1BlockRef)

Jump to

Keyboard shortcuts

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