mirror of
https://github.com/kaspanet/kaspad.git
synced 2025-09-14 13:30:11 +00:00

* Split deletePastBlocks into sub-routines * Remove SelectedParentIterator, and refactor SelectedChildIterator to support First and Error * Implement PruneAllBlocks * Prune all blocks in the store * Prune only blocks that are below the pruning point * Defer call onEnd of LogAndMeasureExecutionTime * Handle a forgotten error * Minor style fixes
17 lines
662 B
Go
17 lines
662 B
Go
package model
|
|
|
|
import "github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
|
|
|
|
// BlockStore represents a store of blocks
|
|
type BlockStore interface {
|
|
Store
|
|
Stage(blockHash *externalapi.DomainHash, block *externalapi.DomainBlock)
|
|
IsStaged() bool
|
|
Block(dbContext DBReader, blockHash *externalapi.DomainHash) (*externalapi.DomainBlock, error)
|
|
HasBlock(dbContext DBReader, blockHash *externalapi.DomainHash) (bool, error)
|
|
Blocks(dbContext DBReader, blockHashes []*externalapi.DomainHash) ([]*externalapi.DomainBlock, error)
|
|
Delete(blockHash *externalapi.DomainHash)
|
|
Count() uint64
|
|
AllBlockHashesIterator(dbContext DBReader) (BlockIterator, error)
|
|
}
|