Class: Libsql::Row

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

Instance Method Summary collapse

Constructor Details

#initialize(inner) ⇒ Row



260
261
262
# File 'lib/libsql.rb', line 260

def initialize(inner)
  @inner = inner
end

Instance Method Details

#[](index) ⇒ Object



269
270
271
272
273
274
275
276
277
278
# File 'lib/libsql.rb', line 269

def [](index)
  case index
  in Integer then @inner.value_at(index)[:ok].convert
  in String
    at = columns.index(index)
    return self[at] unless at.nil?

    raise "#{index} is not a valid row column"
  end
end

#closeObject



280
# File 'lib/libsql.rb', line 280

def close = @inner.deinit

#columnsObject



266
# File 'lib/libsql.rb', line 266

def columns = (0...length).map { |i| @inner.name_at(i).to_s }

#eachObject



267
# File 'lib/libsql.rb', line 267

def each = (0...length).each { |i| yield self[i] }

#lengthObject



265
# File 'lib/libsql.rb', line 265

def length = @inner.length

#to_hObject



264
# File 'lib/libsql.rb', line 264

def to_h = columns.zip(to_a).to_h