class AmountInflector

encoding:utf-8

Constants

CONFIG

Public Class Methods

inflect(amount, unit) click to toggle source
# File lib/amount_inflector/amount_inflector.rb, line 17
def self.inflect(amount, unit)
  unit = unit.to_s.to_sym
  raise "Inflection :#{unit} is unsupported" if CONFIG[unit].nil?
  "#{amount} #{CONFIG[unit][pluralize_form(amount)]}"
end
inflect_unit(amount, unit) click to toggle source
# File lib/amount_inflector/amount_inflector.rb, line 23
def self.inflect_unit(amount, unit)
  unit = unit.to_s.to_sym
  raise "Inflection :#{unit} is unsupported" if CONFIG[unit].nil?
  "#{CONFIG[unit][pluralize_form(amount)]}"
end
pluralize_form(n) click to toggle source
# File lib/amount_inflector/amount_inflector.rb, line 30
def self.pluralize_form(n)
  return :many if (11..14).include?(n % 100)
  return :few if (2..4).include?(n % 10)
  (n % 10 == 1) ? :one : :many
end