class CrateRuby::ResultSet
Attributes
cols[R]
duration[R]
rowcount[R]
Public Class Methods
new(result)
click to toggle source
@param [String] result
# File lib/crate_ruby/result_set.rb, line 28 def initialize(result) result = JSON.parse(result) @cols = result['cols'] @rows = result['rows'] @rowcount = result['rowcount'] @duration = result['duration'] end
Public Instance Methods
<<(val)
click to toggle source
# File lib/crate_ruby/result_set.rb, line 40 def <<(val) @rows << val end
[](val)
click to toggle source
# File lib/crate_ruby/result_set.rb, line 48 def [](val) @rows[val] end
each(&block)
click to toggle source
# File lib/crate_ruby/result_set.rb, line 44 def each(&block) @rows.each(&block) end
inspect()
click to toggle source
# File lib/crate_ruby/result_set.rb, line 36 def inspect %(#<CrateRuby::ResultSet:#{object_id}>, @rowcount="#{@rowcount}", @duration=#{@duration}>) end
select_columns(ary, &block)
click to toggle source
@param [Array] ary Column names to filer on @return [Array] Filtered rows
# File lib/crate_ruby/result_set.rb, line 59 def select_columns(ary, &block) indexes = ary.map { |col| @cols.index(col) }.compact @rows.map { |r| r.values_at(*indexes) }.each(&block) end
values()
click to toggle source
@return [Array] Returns all rows as Array of arrays
# File lib/crate_ruby/result_set.rb, line 53 def values @rows end