func (itr *iterator) Domain() (start, end []byte) {
	if itr.cur == nil || itr.cur.Domain == nil {
		return nil, nil
	}
	return itr.cur.Domain.Start, itr.cur.Domain.End
}
Domain implements Iterator.
package remotedb
import (
	tmdb "github.com/tendermint/tm-db"
	protodb "github.com/tendermint/tm-db/remotedb/proto"
)
func makeIterator(dic protodb.DB_IteratorClient) tmdb.Iterator {
	itr := &iterator{dic: dic}
	itr.Next()  
	return itr
}
func makeReverseIterator(dric protodb.DB_ReverseIteratorClient) tmdb.Iterator {
	rItr := &reverseIterator{dric: dric}
	rItr.Next()  
	return rItr
}
type reverseIterator struct {
	dric protodb.DB_ReverseIteratorClient
	cur  *protodb.Iterator
	err  error
}
var _ tmdb.Iterator = (*iterator)(nil)
func (rItr *reverseIterator) Valid() bool {
	return rItr.cur != nil && rItr.cur.Valid && rItr.err == nil
}
func (rItr *reverseIterator) Domain() (start, end []byte) {
	if rItr.cur == nil || rItr.cur.Domain == nil {
		return nil, nil
	}
	return rItr.cur.Domain.Start, rItr.cur.Domain.End
}
func (rItr *reverseIterator) Next() {
	var err error
	rItr.cur, err = rItr.dric.Recv()
	if err != nil {
		rItr.err = err
	}
}
func (rItr *reverseIterator) Key() []byte {
	rItr.assertIsValid()
	return rItr.cur.Key
}
func (rItr *reverseIterator) Value() []byte {
	rItr.assertIsValid()
	return rItr.cur.Value
}
func (rItr *reverseIterator) Error() error {
	return rItr.err
}
func (rItr *reverseIterator) Close() error {
	return nil
}
func (rItr *reverseIterator) assertIsValid() {
	if !rItr.Valid() {
		panic("iterator is invalid")
	}
}
type iterator struct {
	dic protodb.DB_IteratorClient
	cur *protodb.Iterator
	err error
}
var _ tmdb.Iterator = (*iterator)(nil)
func (itr *iterator) Valid() bool {
	return itr.cur != nil && itr.cur.Valid && itr.err == nil
}