class YeSQL::Query::Result

Attributes

bind_statement[R]
binds[R]
file_path[R]
prepare_option[R]

Public Class Methods

new(bind_statement:, file_path:, prepare:, binds: []) click to toggle source
# File lib/yesql/query/result.rb, line 14
def initialize(bind_statement:, file_path:, prepare:, binds: [])
  @binds = binds
  @bind_statement = bind_statement
  @file_path = file_path
  @prepare_option = prepare
end

Public Instance Methods

call() click to toggle source
# File lib/yesql/query/result.rb, line 21
def call
  return view_result if view?
  return rails5_result if ::ActiveRecord::VERSION::MAJOR == 5 && mysql?

  exec_query(bound, file_path, binds, prepare: prepare_option)
end

Private Instance Methods

connection() click to toggle source
# File lib/yesql/query/result.rb, line 44
def connection
  @connection ||= ActiveRecord::Base.connection
end
rails5_result() click to toggle source
# File lib/yesql/query/result.rb, line 40
def rails5_result
  prepare(bound).execute(*binds)
end
view_result() click to toggle source
# File lib/yesql/query/result.rb, line 36
def view_result
  exec_query(bound)
end