tendermint/merkle/types.go

22 lines
589 B
Go
Raw Normal View History

package merkle
2014-05-23 23:11:22 -07:00
type Tree interface {
2015-05-24 14:19:46 -07:00
Size() (size uint)
2014-10-11 00:52:29 -07:00
Height() (height uint8)
Has(key interface{}) (has bool)
2015-05-24 14:19:46 -07:00
Get(key interface{}) (index uint, value interface{})
GetByIndex(index uint) (key interface{}, value interface{})
2014-10-11 00:52:29 -07:00
Set(key interface{}, value interface{}) (updated bool)
Remove(key interface{}) (value interface{}, removed bool)
2015-05-24 14:19:46 -07:00
HashWithCount() (hash []byte, count uint)
2014-10-11 00:52:29 -07:00
Hash() (hash []byte)
Save() (hash []byte)
2014-10-11 21:27:58 -07:00
Load(hash []byte)
Copy() Tree
2014-10-11 20:39:13 -07:00
Iterate(func(key interface{}, value interface{}) (stop bool)) (stopped bool)
}
2014-09-14 15:37:32 -07:00
type Hashable interface {
Hash() []byte
}