class Audrey::Query::Q0::Iterator

Audrey::Query::Q0::Iterator

Attributes

eiterator[R]
pk[R]

Public Class Methods

new(q0, eiterator) click to toggle source
# File lib/audrey/query/q0.rb, line 327
def initialize(q0, eiterator)
        @pk = Audrey::Util.randstr
        @q0 = q0
        @db = @q0.db
        @eiterator = eiterator
        @q0.db.closers[@pk] = self
end

Public Instance Methods

close() click to toggle source
# File lib/audrey/query/q0.rb, line 363
def close
        @eiterator.close
        @q0.db.closers.delete(@pk)
end
next() click to toggle source
# File lib/audrey/query/q0.rb, line 342
def next
        # $tm.hrm
        
        # if we get a next record
        if row = @eiterator.next
                return @db.object_from_pk(row['pk'])
        
        # else close
        else
                close()
                return nil
        end
end