mirror of https://github.com/poanetwork/gecko.git
updated DB spec
This commit is contained in:
parent
282e89653c
commit
f837398403
|
@ -17,46 +17,42 @@ package database
|
||||||
// iterator until exhaustion. An iterator is not safe for concurrent use, but it
|
// iterator until exhaustion. An iterator is not safe for concurrent use, but it
|
||||||
// is safe to use multiple iterators concurrently.
|
// is safe to use multiple iterators concurrently.
|
||||||
type Iterator interface {
|
type Iterator interface {
|
||||||
// Next moves the iterator to the next key/value pair. It returns whether the
|
// Next moves the iterator to the next key/value pair. It returns whether
|
||||||
// iterator is exhausted.
|
// the iterator is exhausted.
|
||||||
Next() bool
|
Next() bool
|
||||||
|
|
||||||
// Error returns any accumulated error. Exhausting all the key/value pairs
|
// Error returns any accumulated error. Exhausting all the key/value pairs
|
||||||
// is not considered to be an error.
|
// is not considered to be an error.
|
||||||
Error() error
|
Error() error
|
||||||
|
|
||||||
// Key returns the key of the current key/value pair, or nil if done. The caller
|
// Key returns the key of the current key/value pair, or nil if done.
|
||||||
// should not modify the contents of the returned slice, and its contents may
|
|
||||||
// change on the next call to Next.
|
|
||||||
Key() []byte
|
Key() []byte
|
||||||
|
|
||||||
// Value returns the value of the current key/value pair, or nil if done. The
|
// Value returns the value of the current key/value pair, or nil if done.
|
||||||
// caller should not modify the contents of the returned slice, and its contents
|
|
||||||
// may change on the next call to Next.
|
|
||||||
Value() []byte
|
Value() []byte
|
||||||
|
|
||||||
// Release releases associated resources. Release should always succeed and can
|
// Release releases associated resources. Release should always succeed and
|
||||||
// be called multiple times without causing error.
|
// can be called multiple times without causing error.
|
||||||
Release()
|
Release()
|
||||||
}
|
}
|
||||||
|
|
||||||
// Iteratee wraps the NewIterator methods of a backing data store.
|
// Iteratee wraps the NewIterator methods of a backing data store.
|
||||||
type Iteratee interface {
|
type Iteratee interface {
|
||||||
// NewIterator creates a binary-alphabetical iterator over the entire keyspace
|
// NewIterator creates a binary-alphabetical iterator over the entire
|
||||||
// contained within the key-value database.
|
// keyspace contained within the key-value database.
|
||||||
NewIterator() Iterator
|
NewIterator() Iterator
|
||||||
|
|
||||||
// NewIteratorWithStart creates a binary-alphabetical iterator over a subset of
|
// NewIteratorWithStart creates a binary-alphabetical iterator over a subset
|
||||||
// database content starting at a particular initial key (or after, if it does
|
// of database content starting at a particular initial key (or after, if it
|
||||||
// not exist).
|
// does not exist).
|
||||||
NewIteratorWithStart(start []byte) Iterator
|
NewIteratorWithStart(start []byte) Iterator
|
||||||
|
|
||||||
// NewIteratorWithPrefix creates a binary-alphabetical iterator over a subset
|
// NewIteratorWithPrefix creates a binary-alphabetical iterator over a
|
||||||
// of database content with a particular key prefix.
|
// subset of database content with a particular key prefix.
|
||||||
NewIteratorWithPrefix(prefix []byte) Iterator
|
NewIteratorWithPrefix(prefix []byte) Iterator
|
||||||
|
|
||||||
// NewIteratorWithStartAndPrefix creates a binary-alphabetical iterator over a
|
// NewIteratorWithStartAndPrefix creates a binary-alphabetical iterator over
|
||||||
// subset of database content with a particular key prefix starting at a
|
// a subset of database content with a particular key prefix starting at a
|
||||||
// specified key.
|
// specified key.
|
||||||
NewIteratorWithStartAndPrefix(start, prefix []byte) Iterator
|
NewIteratorWithStartAndPrefix(start, prefix []byte) Iterator
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue