module Sorted::Parse

Public Instance Methods

parse_column(raw_all_content, raw_column) click to toggle source
# File lib/sorted/parse.rb, line 31
def parse_column(raw_all_content, raw_column)
  raw_column || raw_all_content
end
parse_direction(raw_direction) click to toggle source
# File lib/sorted/parse.rb, line 35
def parse_direction(raw_direction)
  raw_direction.nil? ? 'asc' : raw_direction.downcase
end
parse_match(raw) click to toggle source
# File lib/sorted/parse.rb, line 10
def parse_match(raw)
  return parse_sort_with_direction(raw) if raw[5].nil?

  parse_sort_without_direction(raw)
end
parse_nulls(raw_nulls) click to toggle source
# File lib/sorted/parse.rb, line 39
def parse_nulls(raw_nulls)
  raw_nulls.downcase
end
parse_sort_with_direction(raw) click to toggle source
# File lib/sorted/parse.rb, line 16
def parse_sort_with_direction(raw)
  parsed = []
  parsed << parse_column(raw[1], raw[2])
  parsed << parse_direction(raw[3])
  parsed << parse_nulls(raw[4]) unless raw[4].nil?
  parsed
end
parse_sort_without_direction(raw) click to toggle source
# File lib/sorted/parse.rb, line 24
def parse_sort_without_direction(raw)
  parsed = []
  parsed << parse_column(raw[1], raw[5])
  parsed << parse_nulls(raw[6]) unless raw[6].nil?
  parsed
end
split(raw, delim, &block) click to toggle source
# File lib/sorted/parse.rb, line 5
def split(raw, delim, &block)
  return Set.new if raw.nil?
  raw.to_s.split(delim).inject(Set.new, &block)
end