Class: AttrJson::Associations::Loader::OrderByCase

Inherits:
Object
  • Object
show all
Defined in:
lib/attr_json/associations/loader/order_by_case.rb

Instance Method Summary collapse

Constructor Details

#initialize(klass, key, values) ⇒ OrderByCase

Returns a new instance of OrderByCase.



6
7
8
9
10
# File 'lib/attr_json/associations/loader/order_by_case.rb', line 6

def initialize(klass, key, values)
  @klass = klass
  @key = key
  @values = values
end

Instance Method Details

#callObject



12
13
14
15
16
17
18
19
# File 'lib/attr_json/associations/loader/order_by_case.rb', line 12

def call
  order = if (definition = attr_json_definition)
      jsonb_column_order(definition)
    else
      normal_column_order
    end
  Arel.sql(order)
end