Class: Libsql::Rows

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/libsql.rb

Instance Method Summary collapse

Constructor Details

#initialize(inner) ⇒ Rows

Returns a new instance of Rows.



330
331
332
# File 'lib/libsql.rb', line 330

def initialize(inner)
  @inner = inner
end

Instance Method Details

#closeObject

Raises:



364
365
366
367
368
369
# File 'lib/libsql.rb', line 364

def close
  raise ClosedException if closed?

  @inner.deinit
  @inner = nil
end

#closed?Boolean

Returns:

  • (Boolean)


371
372
373
# File 'lib/libsql.rb', line 371

def closed?
  @inner.nil?
end

#column_countObject

Raises:



334
335
336
337
338
# File 'lib/libsql.rb', line 334

def column_count
  raise ClosedException if closed?

  @inner.column_count
end

#columnsObject

Raises:



340
341
342
343
344
# File 'lib/libsql.rb', line 340

def columns
  raise ClosedException if closed?

  (0...column_count).map { |i| @inner.name_at(i).to_s }
end

#eachObject



357
358
359
360
361
362
# File 'lib/libsql.rb', line 357

def each
  while (row = self.next)
    yield row
    row.close
  end
end

#nextObject

Raises:



350
351
352
353
354
355
# File 'lib/libsql.rb', line 350

def next
  raise ClosedException if closed?

  row = @inner.next
  Row.new row unless row.empty?
end

#to_aObject



346
347
348
# File 'lib/libsql.rb', line 346

def to_a
  map(&:to_h)
end