Documentation
¶
Overview ¶
package blockstore implements a thin wrapper over a datastore, giving a clean interface for Getting and Putting block objects.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var BlockPrefix = ds.NewKey("blocks")
BlockPrefix namespaces blockstore datastores
View Source
var ErrNotFound = errors.New("blockstore: block not found")
View Source
var ValueTypeMismatch = errors.New("The retrieved value is not a Block")
Functions ¶
This section is empty.
Types ¶
type Blockstore ¶
type Blockstore interface {
DeleteBlock(key.Key) error
Has(key.Key) (bool, error)
Get(key.Key) (*blocks.Block, error)
Put(*blocks.Block) error
PutMany([]*blocks.Block) error
AllKeysChan(ctx context.Context) (<-chan key.Key, error)
}
Blockstore wraps a ThreadSafeDatastore
func NewBlockstore ¶
func NewBlockstore(d ds.ThreadSafeDatastore) Blockstore
func WriteCached ¶
func WriteCached(bs Blockstore, size int) (Blockstore, error)
WriteCached returns a blockstore that caches up to |size| unique writes (bs.Put).
Click to show internal directories.
Click to hide internal directories.