class Db2Query::Result
Attributes
definition[R]
query[R]
Public Class Methods
new(columns, rows, definition)
click to toggle source
Calls superclass method
# File lib/db2_query/result.rb, line 11 def initialize(columns, rows, definition) @definition = definition validate_result_columns(columns) super(columns, rows, {}) end
Public Instance Methods
inspect()
click to toggle source
# File lib/db2_query/result.rb, line 37 def inspect entries = records.take(11).map!(&:inspect) entries[10] = "..." if entries.size == 11 "#<#{self.class.name} [#{entries.join(', ')}]>" end
record()
click to toggle source
# File lib/db2_query/result.rb, line 17 def record records.first end
records()
click to toggle source
# File lib/db2_query/result.rb, line 21 def records @records ||= rows.map { |row| new_record(row) } end
to_h()
click to toggle source
# File lib/db2_query/result.rb, line 25 def to_h rows.map do |row| index, hash = [0, {}] while index < columns.length attr_name = columns[index].to_sym hash[attr_name] = data_type(attr_name).deserialize(row[index]) index += 1 end hash end end
Private Instance Methods
method_missing(method_name, *args, &block)
click to toggle source
Calls superclass method
# File lib/db2_query/result.rb, line 81 def method_missing(method_name, *args, &block) if record.respond_to?(method_name) record.send(method_name) else super end end
new_record(row)
click to toggle source
# File lib/db2_query/result.rb, line 77 def new_record(row) Record.new(row, columns, definition) end