class ArelHelpers::QueryBuilder
Constants
- TERMINAL_METHODS
Attributes
query[R]
Public Class Methods
new(query)
click to toggle source
# File lib/arel-helpers/query_builder.rb, line 33 def initialize(query) @query = query end
not_nil(name)
click to toggle source
Calls superclass method
# File lib/arel-helpers/query_builder.rb, line 18 def self.not_nil(name) mod = Module.new do define_method(name) do |*args, **kwargs| if (value = super(*args, **kwargs)) value else reflect(query) end end end prepend mod name end
Protected Instance Methods
reflect(query)
click to toggle source
# File lib/arel-helpers/query_builder.rb, line 39 def reflect(query) dup.tap { |obj| obj.instance_variable_set('@query'.freeze, query) } end