module Dugway::Filters::ComparisonFilters

Public Instance Methods

num_eq(input, operand) click to toggle source
# File lib/dugway/liquid/filters/comparison_filters.rb, line 12
def num_eq(input, operand)
  to_number(input) == to_number(operand)
end
num_gt(input, operand) click to toggle source
# File lib/dugway/liquid/filters/comparison_filters.rb, line 4
def num_gt(input, operand)
  to_number(input) > to_number(operand)
end
num_gte(input, operand) click to toggle source
# File lib/dugway/liquid/filters/comparison_filters.rb, line 20
def num_gte(input, operand)
  num_eq(input, operand) || num_gt(input, operand)
end
num_lt(input, operand) click to toggle source
# File lib/dugway/liquid/filters/comparison_filters.rb, line 8
def num_lt(input, operand)
  to_number(input) < to_number(operand)
end
num_lte(input, operand) click to toggle source
# File lib/dugway/liquid/filters/comparison_filters.rb, line 16
def num_lte(input, operand)
  num_eq(input, operand) || num_lt(input, operand)
end

Private Instance Methods

to_number(obj) click to toggle source
# File lib/dugway/liquid/filters/comparison_filters.rb, line 26
def to_number(obj)
  case obj
  when Numeric
    obj
  when String
    (obj.strip =~ /^\d+\.\d+$/) ? obj.to_f : obj.to_i
  else
    0
  end
end