Module: Prato::Internal::Pipeline::Sorting
Instance Method Summary collapse
Instance Method Details
#sort_query(query_state, spec, raw_sorts) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/prato/internal/pipeline/sorting.rb', line 9 def sort_query(query_state, spec, raw_sorts) return query_state if raw_sorts.nil? sorts = Array(raw_sorts) any_ruby = sorts.any? { |s| spec.columns[s.field].is_a?(Types::RubyColumn) } if any_ruby || !query_state.unmaterialized? apply_ruby_sorts(query_state, spec, sorts) else apply_sql_sorts(query_state, spec, sorts) end end |