Fix Err fallout for graph/memstore iterators

This commit is contained in:
Andrew Dunham 2015-04-14 18:56:05 -07:00
parent 3ce9adbc0b
commit 9cdeb519d7
2 changed files with 10 additions and 0 deletions

View file

@ -52,6 +52,10 @@ func (it *nodesAllIterator) Next() bool {
return true return true
} }
func (it *nodesAllIterator) Err() error {
return nil
}
func newQuadsAllIterator(qs *QuadStore) *quadsAllIterator { func newQuadsAllIterator(qs *QuadStore) *quadsAllIterator {
var out quadsAllIterator var out quadsAllIterator
out.Int64 = *iterator.NewInt64(1, qs.nextQuadID-1) out.Int64 = *iterator.NewInt64(1, qs.nextQuadID-1)

View file

@ -30,6 +30,7 @@ type Iterator struct {
iter *b.Enumerator iter *b.Enumerator
data string data string
result graph.Value result graph.Value
err error
} }
func cmp(a, b int64) int { func cmp(a, b int64) int {
@ -118,6 +119,7 @@ func (it *Iterator) Next() bool {
} }
result, _, err := it.iter.Next() result, _, err := it.iter.Next()
if err != nil { if err != nil {
it.err = err
return graph.NextLogOut(it, nil, false) return graph.NextLogOut(it, nil, false)
} }
if !it.checkValid(result) { if !it.checkValid(result) {
@ -127,6 +129,10 @@ func (it *Iterator) Next() bool {
return graph.NextLogOut(it, it.result, true) return graph.NextLogOut(it, it.result, true)
} }
func (it *Iterator) Err() error {
return it.err
}
func (it *Iterator) ResultTree() *graph.ResultTree { func (it *Iterator) ResultTree() *graph.ResultTree {
return graph.NewResultTree(it.Result()) return graph.NewResultTree(it.Result())
} }