class Terrazine::Result

inheritance from row for delegation methods to first row… may be method missing?

Attributes

fields[R]
options[R]
rows[R]

Public Class Methods

new(result, options) click to toggle source

TODO: as arguments keys, values and options? Future support of another db? arguments - PG::Result instance and hash of options

# File lib/terrazine/result.rb, line 41
def initialize(result, options)
  # how another db parsing data?
  TypeMap.update(result, options[:types]) if options[:types]

  @options = options
  @fields = result.fields
  @rows = []
  result.each_row { |i| @rows << Row.new(self, i) }
  result.clear # they advise to clear it, but maybe better to use it until presenter?
end

Public Instance Methods

pg_result() click to toggle source
# File lib/terrazine/result.rb, line 62
def pg_result
  self
end
present(o = {}) click to toggle source
# File lib/terrazine/result.rb, line 52
def present(o = {})
  options = @options[:presenter_options] ? o.merge(@options[:presenter_options]) : o
  Presenter.present(self, options)
end
values() click to toggle source

ResultRow inheritance support

# File lib/terrazine/result.rb, line 58
def values
  first&.values
end