提交 5c04ca87 编写于 作者: R Rafael Mendonça França

Make execute priave API

上级 d3b93e40
......@@ -42,7 +42,7 @@ module NumberHelper
# number_to_phone(1235551234, country_code: 1, extension: 1343, delimiter: '.')
# # => +1.123.555.1234 x 1343
def number_to_phone(number, options = {})
NumberToPhoneConverter.new(number, options).execute
NumberToPhoneConverter.convert(number, options)
end
# Formats a +number+ into a currency string (e.g., $13.65). You
......@@ -84,7 +84,7 @@ def number_to_phone(number, options = {})
# number_to_currency(1234567890.50, unit: '£', separator: ',', delimiter: '', format: '%n %u')
# # => 1234567890,50 £
def number_to_currency(number, options = {})
NumberToCurrencyConverter.new(number, options).execute
NumberToCurrencyConverter.convert(number, options)
end
# Formats a +number+ as a percentage string (e.g., 65%). You can
......@@ -120,7 +120,7 @@ def number_to_currency(number, options = {})
# number_to_percentage('98a') # => 98a%
# number_to_percentage(100, format: '%n %') # => 100 %
def number_to_percentage(number, options = {})
NumberToPercentageConverter.new(number, options).execute
NumberToPercentageConverter.convert(number, options)
end
# Formats a +number+ with grouped thousands using +delimiter+
......@@ -149,7 +149,7 @@ def number_to_percentage(number, options = {})
# number_to_delimited(98765432.98, delimiter: ' ', separator: ',')
# # => 98 765 432,98
def number_to_delimited(number, options = {})
NumberToDelimitedConverter.new(number, options).execute
NumberToDelimitedConverter.convert(number, options)
end
# Formats a +number+ with the specified level of
......@@ -192,7 +192,7 @@ def number_to_delimited(number, options = {})
# number_to_rounded(1111.2345, precision: 2, separator: ',', delimiter: '.')
# # => 1.111,23
def number_to_rounded(number, options = {})
NumberToRoundedConverter.new(number, options).execute
NumberToRoundedConverter.convert(number, options)
end
# Formats the bytes in +number+ into a more understandable
......@@ -240,7 +240,7 @@ def number_to_rounded(number, options = {})
# number_to_human_size(1234567890123, precision: 5) # => "1.1229 TB"
# number_to_human_size(524288000, precision: 5) # => "500 MB"
def number_to_human_size(number, options = {})
NumberToHumanSizeConverter.new(number, options).execute
NumberToHumanSizeConverter.convert(number, options)
end
# Pretty prints (formats and approximates) a number in a way it
......@@ -341,7 +341,7 @@ def number_to_human_size(number, options = {})
# number_to_human(1, units: :distance) # => "1 meter"
# number_to_human(0.34, units: :distance) # => "34 centimeters"
def number_to_human(number, options = {})
NumberToHumanConverter.new(number, options).execute
NumberToHumanConverter.convert(number, options)
end
end
......
......@@ -115,6 +115,9 @@ class NumberConverter # :nodoc:
}
}
def self.convert(number, options)
new(number, options).execute
end
def initialize(number, opts = {})
@number = number
......
......@@ -13,7 +13,7 @@ def convert
number = absolute_value(number)
end
rounded_number = NumberToRoundedConverter.new(number, options).execute
rounded_number = NumberToRoundedConverter.convert(number, options)
format.gsub('%n', rounded_number).gsub('%u', options[:unit])
end
......
......@@ -23,7 +23,7 @@ def convert # :nodoc:
unit = determine_unit(units, exponent)
rounded_number = NumberToRoundedConverter.new(@number, options).execute
rounded_number = NumberToRoundedConverter.convert(@number, options)
format.gsub(/%n/, rounded_number).gsub(/%u/, unit).strip
end
......
......@@ -19,7 +19,7 @@ def convert
number_to_format = @number.to_i.to_s
else
human_size = @number / (base ** exponent)
number_to_format = NumberToRoundedConverter.new(human_size, options).execute
number_to_format = NumberToRoundedConverter.convert(human_size, options)
end
conversion_format.gsub(/%n/, number_to_format).gsub(/%u/, unit)
end
......
......@@ -5,7 +5,7 @@ class NumberToPercentageConverter < NumberConverter # :nodoc:
self.namespace = :percentage
def convert
rounded_number = NumberToRoundedConverter.new(number, options).execute
rounded_number = NumberToRoundedConverter.convert(number, options)
options[:format].gsub('%n', rounded_number)
end
......
......@@ -19,7 +19,8 @@ def convert
rounded_number = BigDecimal.new(@number.to_s).round(precision).to_f
rounded_number = rounded_number.abs if rounded_number.zero? # prevent showing negative zeros
end
delimited_number = NumberToDelimitedConverter.new("%01.#{precision}f" % rounded_number, options).execute
delimited_number = NumberToDelimitedConverter.convert("%01.#{precision}f" % rounded_number, options)
format_number(delimited_number)
end
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册