rm Close() from Next()

This commit is contained in:
mossid 2018-10-09 05:37:18 +09:00
parent ed9b29c856
commit 0cbb37ff03
1 changed files with 10 additions and 8 deletions

View File

@ -118,6 +118,8 @@ func (s prefixStore) ReverseIterator(start, end []byte) Iterator {
return newPrefixIterator(s.prefix, start, end, iter) return newPrefixIterator(s.prefix, start, end, iter)
} }
var _ sdk.Iterator = (*prefixIterator)(nil)
type prefixIterator struct { type prefixIterator struct {
prefix []byte prefix []byte
start, end []byte start, end []byte
@ -125,8 +127,8 @@ type prefixIterator struct {
valid bool valid bool
} }
func newPrefixIterator(prefix, start, end []byte, parent Iterator) prefixIterator { func newPrefixIterator(prefix, start, end []byte, parent Iterator) *prefixIterator {
return prefixIterator{ return &prefixIterator{
prefix: prefix, prefix: prefix,
start: start, start: start,
end: end, end: end,
@ -136,17 +138,17 @@ func newPrefixIterator(prefix, start, end []byte, parent Iterator) prefixIterato
} }
// Implements Iterator // Implements Iterator
func (iter prefixIterator) Domain() ([]byte, []byte) { func (iter *prefixIterator) Domain() ([]byte, []byte) {
return iter.start, iter.end return iter.start, iter.end
} }
// Implements Iterator // Implements Iterator
func (iter prefixIterator) Valid() bool { func (iter *prefixIterator) Valid() bool {
return iter.valid && iter.iter.Valid() return iter.valid && iter.iter.Valid()
} }
// Implements Iterator // Implements Iterator
func (iter prefixIterator) Next() { func (iter *prefixIterator) Next() {
if !iter.valid { if !iter.valid {
panic("prefixIterator invalid, cannot call Next()") panic("prefixIterator invalid, cannot call Next()")
} }
@ -157,7 +159,7 @@ func (iter prefixIterator) Next() {
} }
// Implements Iterator // Implements Iterator
func (iter prefixIterator) Key() (key []byte) { func (iter *prefixIterator) Key() (key []byte) {
if !iter.valid { if !iter.valid {
panic("prefixIterator invalid, cannot call Key()") panic("prefixIterator invalid, cannot call Key()")
} }
@ -167,7 +169,7 @@ func (iter prefixIterator) Key() (key []byte) {
} }
// Implements Iterator // Implements Iterator
func (iter prefixIterator) Value() []byte { func (iter *prefixIterator) Value() []byte {
if !iter.valid { if !iter.valid {
panic("prefixIterator invalid, cannot call Value()") panic("prefixIterator invalid, cannot call Value()")
} }
@ -175,7 +177,7 @@ func (iter prefixIterator) Value() []byte {
} }
// Implements Iterator // Implements Iterator
func (iter prefixIterator) Close() { func (iter *prefixIterator) Close() {
iter.iter.Close() iter.iter.Close()
} }