chain

package
v0.11.0 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2019 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrBestBlock indicates that the best block is being changed in
	// chainservice soon.
	ErrBestBlock = errors.New("best block changed in chainservice")
)
View Source
var (
	// ErrQuit indicates that shutdown is initiated.
	ErrQuit = errors.New("shutdown initiated")
)

Functions

func ConnectBlock

func ConnectBlock(hs component.ICompSyncRequester, block *types.Block, blockState *state.BlockState) error

ConnectBlock send an AddBlock request to the chain service.

func FetchTXs

func FetchTXs(hs component.ICompSyncRequester, maxBlockBodySize uint32) []*types.Tx

FetchTXs requests to mempool and returns types.Tx array.

func GatherTXs

func GatherTXs(hs component.ICompSyncRequester, bState *state.BlockState, txOp TxOp, maxBlockBodySize uint32) ([]*types.Tx, error)

GatherTXs returns transactions from txIn. The selection is done by applying txDo.

func GenerateBlock

func GenerateBlock(hs component.ICompSyncRequester, prevBlock *types.Block, bState *state.BlockState, txOp TxOp, ts int64) (*types.Block, error)

GenerateBlock generate & return a new block

func GetBestBlock

func GetBestBlock(hs component.ICompSyncRequester) *types.Block

GetBestBlock returns the current best block from chainservice

func LockChain added in v0.9.4

func LockChain() error

LockChain aquires the chain lock in a non-blocking mode.

func MaxBlockBodySize

func MaxBlockBodySize() uint32

MaxBlockBodySize returns the maximum block body size.

TODO: This is not an exact size. Let's make it exact!

func UnlockChain added in v0.9.4

func UnlockChain()

UnlockChain release the chain lock.

Types

type ErrBlockConnect

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

ErrBlockConnect indicates a error indicating a failed block connected request.

func (ErrBlockConnect) Error

func (e ErrBlockConnect) Error() string

type ErrTimeout

type ErrTimeout struct {
	Kind    string
	Timeout int64
}

ErrTimeout can be used to indicatefor any kind of timeout.

func (ErrTimeout) Error

func (e ErrTimeout) Error() string

type TxOp

type TxOp interface {
	Apply(bState *state.BlockState, tx *types.Tx) error
}

TxOp is an interface used by GatherTXs for apply some transaction related operation.

func NewCompTxOp

func NewCompTxOp(fn ...TxOp) TxOp

NewCompTxOp returns a function which applies each function in fn.

type TxOpFn

type TxOpFn func(bState *state.BlockState, tx *types.Tx) error

TxOpFn is the type of arguments for CompositeTxDo.

func (TxOpFn) Apply

func (f TxOpFn) Apply(bState *state.BlockState, tx *types.Tx) error

Apply applies f to tx.

Jump to

Keyboard shortcuts

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