sequencer

package
v0.0.0-...-4547e52 Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2023 License: GPL-3.0, Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Batcher

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

Batcher assumes exclusive control of underlying blockchain, i.e. mining and blockchain insertion can not happen. TODO: support Berlin+London fork

func NewBatcher

func NewBatcher(coinbase common.Address, eth api.ExecutionBackend) (*Batcher, error)

func (*Batcher) Batch

func (b *Batcher) Batch() (types.Blocks, error)

Batch will force the remaining transactions to form a block, insert it into the blockchain, and return all blocks created between Batch calls

func (*Batcher) CommitTransactions

func (b *Batcher) CommitTransactions(txs []*types.Transaction) error

CommitTransactions will try fill transactions into blocks, and insert full blocks into the blockchain TODO: recover from failed commitBlock, rewind blockchain

type Sequencer

type Sequencer struct {
	*services.BaseService
}

TODO: delete this implementation. Current Sequencer assumes no Berlin+London fork on L2

func New

func New(eth api.ExecutionBackend, proofBackend proof.Backend, l1Client client.L1BridgeClient, cfg services.BaseConfig) (*Sequencer, error)

func (*Sequencer) Start

func (s *Sequencer) Start(ctx context.Context, eg api.ErrGroup) error

Jump to

Keyboard shortcuts

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