OSDN Git Service

40ef295838229c48dd683fab5bb4e934908dd6f8
[bytom/vapor.git] / database / dbutils / db_interface.go
1 package dbutils
2
3 type DB interface {
4         Get([]byte) []byte
5         Set([]byte, []byte)
6         SetSync([]byte, []byte)
7         Delete([]byte)
8         DeleteSync([]byte)
9         Close()
10         NewBatch() Batch
11         Iterator() Iterator
12         IteratorPrefix([]byte) Iterator
13
14         // For debugging
15         Print()
16         Stats() map[string]string
17 }
18
19 type Batch interface {
20         Set(key, value []byte)
21         Delete(key []byte)
22         Write()
23 }
24
25 type Iterator interface {
26         Next() bool
27
28         Key() []byte
29         Value() []byte
30         Seek([]byte) bool
31
32         Release()
33         Error() error
34 }