Versions in this module Expand all Collapse all v0 v0.9.5 Feb 22, 2022 v0.9.4 Feb 22, 2022 Changes in this version + var ErrFutureBlock = errors.New("block in the future") + var ErrInvalidNumber = errors.New("invalid block number") + var ErrPrunedAncestor = errors.New("pruned ancestor") + var ErrUnknownAncestor = errors.New("unknown ancestor") + type ChainHeaderReader interface + Config func() *params.ChainConfig + CurrentHeader func() *types.Header + GetHeader func(hash common.Hash, number uint64) *types.Header + GetHeaderByHash func(hash common.Hash) *types.Header + GetHeaderByNumber func(number uint64) *types.Header + type ChainReader interface + GetBlock func(hash common.Hash, number uint64) *types.Block + type Engine interface + Author func(header *types.Header) (common.Address, error) + CalcDifficulty func(chain ChainHeaderReader, time uint64, parent *types.Header) *big.Int + Close func() error + Finalize func(chain ChainHeaderReader, block *types.Block, parent *types.Header, ...) error + FinalizeAndAssemble func(chain ChainHeaderReader, header *types.Header, parent *types.Header, ...) (*types.Block, error) + Prepare func(chain ChainHeaderReader, header *types.Header) error + VerifyHeader func(chain ChainHeaderReader, header *types.Header) error + VerifyUncles func(chain ChainReader, block *types.Block) error