trie

package
v1.0.2-beta Latest Latest
Warning

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

Go to latest
Published: Jul 9, 2019 License: Apache-2.0, GPL-3.0 Imports: 10 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CopyBytes

func CopyBytes(b []byte) (copiedBytes []byte)

func Deserialize

func Deserialize(r io.Reader) (node, error)

Types

type Database

type Database interface {
	Get(key []byte) ([]byte, error)
	Has(key []byte) (bool, error)
	BatchPut(key, value []byte) error
}

type Iterator

type Iterator struct {
	Key   []byte
	Value []byte
	Err   error
	// contains filtered or unexported fields
}

func NewIterator

func NewIterator(it NodeIterator) *Iterator

func (*Iterator) Next

func (it *Iterator) Next() bool

type MemDatabase

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

func NewMemDatabase

func NewMemDatabase() *MemDatabase

func (*MemDatabase) BatchPut

func (db *MemDatabase) BatchPut(key []byte, value []byte) error

func (*MemDatabase) Delete

func (db *MemDatabase) Delete(key []byte) error

func (*MemDatabase) Get

func (db *MemDatabase) Get(key []byte) ([]byte, error)

func (*MemDatabase) Has

func (db *MemDatabase) Has(key []byte) (bool, error)

func (*MemDatabase) ViewDB

func (db *MemDatabase) ViewDB()

type NodeIterator

type NodeIterator interface {
	Next(bool) bool
	Error() error
	Hash() common.Uint256
	Parent() common.Uint256
	Path() []byte
	Leaf() bool
	LeafKey() []byte
	LeafBlob() []byte
}

type Trie

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

func New

func New(hash common.Uint256, db Database) (*Trie, error)

func (*Trie) Commit

func (t *Trie) Commit() (common.Uint256, error)

func (*Trie) CommitTo

func (t *Trie) CommitTo(db Database) (common.Uint256, error)

func (*Trie) Copy

func (t *Trie) Copy() *Trie

func (*Trie) Delete

func (t *Trie) Delete(key []byte)

func (*Trie) Get

func (t *Trie) Get(key []byte) []byte

func (*Trie) Hash

func (t *Trie) Hash() common.Uint256

func (*Trie) NodeIterator

func (t *Trie) NodeIterator(start []byte) NodeIterator

func (*Trie) TryDelete

func (t *Trie) TryDelete(key []byte) error

func (*Trie) TryGet

func (t *Trie) TryGet(key []byte) ([]byte, error)

func (*Trie) TryUpdate

func (t *Trie) TryUpdate(key, value []byte) error

func (*Trie) Update

func (t *Trie) Update(key, value []byte)

Jump to

Keyboard shortcuts

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