# File lib/dbi/handles/statement.rb, line 249
249:         def fetch_array
250:             raise InterfaceError, "Statement was already closed!" if @handle.nil?
251:             raise InterfaceError, "Statement must first be executed" unless @fetchable
252: 
253:             if block_given? 
254:                 while (res = @handle.fetch) != nil
255:                     yield res
256:                 end
257:                 @handle.cancel
258:                 @fetchable = false
259:                 return nil
260:             else
261:                 res = @handle.fetch
262:                 if res.nil?
263:                     @handle.cancel
264:                     @fetchable = false
265:                 end
266:                 return res
267:             end
268:         end