Class: Sorted::URIQuery

Inherits:
Object
  • Object
show all
Extended by:
Parse
Defined in:
lib/sorted/uri_query.rb

Constant Summary collapse

REGEXP =
/(([a-z0-9._]+)_([asc|desc]+)|[a-z0-9._]+)/i

Class Method Summary collapse

Methods included from Parse

parse_match, split

Class Method Details

.encode(set) ⇒ Object



18
19
20
# File 'lib/sorted/uri_query.rb', line 18

def self.encode(set)
  set.map { |a| a.join('_') }.join('!')
end

.parse(raw) ⇒ Object



10
11
12
13
14
15
16
# File 'lib/sorted/uri_query.rb', line 10

def self.parse(raw)
  split(raw, /!/) do |set, part|
    m = part.match(REGEXP)
    next unless m
    set << parse_match(m)
  end
end