mapdb

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Nov 24, 2020 License: Apache-2.0, BSD-2-Clause Imports: 4 Imported by: 0

Documentation

Overview

Package mapdb provides a map implementation of a key value database. It offers a lightweight drop-in replacement of hive.go/database for tests or in simulations where more than one instance is required.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type MapDB

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

MapDB is a simple implementation of DB using a map.

func NewMapDB

func NewMapDB() *MapDB

NewMapDB creates a database.Database implementation purely based on a go map. MapDB does not support TTL.

func (*MapDB) Apply

func (db *MapDB) Apply(set []database.Entry, del []database.Key) error

func (*MapDB) Contains

func (db *MapDB) Contains(key database.Key) (contains bool, err error)

func (*MapDB) Delete

func (db *MapDB) Delete(key database.Key) error

func (*MapDB) DeletePrefix

func (db *MapDB) DeletePrefix(keyPrefix database.KeyPrefix) error

func (*MapDB) ForEach

func (db *MapDB) ForEach(consume func(entry database.Entry) bool) error

func (*MapDB) ForEachKeyOnly

func (db *MapDB) ForEachKeyOnly(consume func(entry database.KeyOnlyEntry) bool) error

func (*MapDB) ForEachPrefix

func (db *MapDB) ForEachPrefix(keyPrefix database.KeyPrefix, consume func(entry database.Entry) (stop bool)) error

func (*MapDB) ForEachPrefixKeyOnly

func (db *MapDB) ForEachPrefixKeyOnly(keyPrefix database.KeyPrefix, consume func(entry database.KeyOnlyEntry) (stop bool)) error

func (*MapDB) Get

func (db *MapDB) Get(key database.Key) (entry database.Entry, err error)

func (*MapDB) GetKeyOnly

func (db *MapDB) GetKeyOnly(key database.Key) (entry database.KeyOnlyEntry, err error)

func (*MapDB) Set

func (db *MapDB) Set(entry database.Entry) error

func (*MapDB) StreamForEach

func (db *MapDB) StreamForEach(consume func(entry database.Entry) error) (err error)

func (*MapDB) StreamForEachKeyOnly

func (db *MapDB) StreamForEachKeyOnly(consume func(entry database.KeyOnlyEntry) error) (err error)

func (*MapDB) StreamForEachPrefix

func (db *MapDB) StreamForEachPrefix(keyPrefix database.KeyPrefix, consume func(entry database.Entry) error) (err error)

func (*MapDB) StreamForEachPrefixKeyOnly

func (db *MapDB) StreamForEachPrefixKeyOnly(keyPrefix database.KeyPrefix, consume func(database.KeyOnlyEntry) error) (err error)

Jump to

Keyboard shortcuts

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