Class: Sorted::ElasticsearchQuery
- Inherits:
-
Object
- Object
- Sorted::ElasticsearchQuery
- Extended by:
- Parse
- Defined in:
- lib/sorted.rb
Overview
Parses an Elasticsearch type set of order
Parsing:
params = [{ 'email' => {'order' => 'desc'}}]
set = Sorted::ElasticsearchQuery.parse(params)
set.to_a #=> [['email', 'desc']]
Encoding:
Sorted::ParamsQuery.encode(set) #=> [{ 'email' => {'order' => 'desc'}}]
Class Method Summary collapse
Methods included from Parse
Class Method Details
.encode(set) ⇒ Object
236 237 238 |
# File 'lib/sorted.rb', line 236 def self.encode(set) set.to_a.each_with_object([]) { |f, a| a << { f.first => { 'order' => f.last } } } end |
.parse(raw) ⇒ Object
232 233 234 |
# File 'lib/sorted.rb', line 232 def self.parse(raw) Set.new(raw.each_with_object([]) { |hash, a| a << [hash.first.first, hash.first.last['order']] }) end |