Simplify Nexter interface

This change allows a Nexter to be used in the same manner as a scanner
using a for graph.Next(it) {} construction.

It is important that graph.Next(it) and any associated it.Result() calls
operate on the same iterator.
This commit is contained in:
kortschak 2014-08-01 09:15:02 +09:30
parent f8e28e066e
commit b1a70d99aa
31 changed files with 168 additions and 233 deletions

View file

@ -88,11 +88,7 @@ func (s *Session) ExecInput(input string, c chan interface{}, limit int) {
if glog.V(2) {
glog.V(2).Infoln(it.DebugString(0))
}
for {
_, ok := graph.Next(it)
if !ok {
break
}
for graph.Next(it) {
tags := make(map[string]graph.Value)
it.TagResults(tags)
c <- tags