numbers_and_words 0.11.0 → 0.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. checksums.yaml +4 -4
  2. data/lib/numbers_and_words/core_ext/array.rb +2 -2
  3. data/lib/numbers_and_words/core_ext/float.rb +1 -1
  4. data/lib/numbers_and_words/core_ext/integer.rb +1 -1
  5. data/lib/numbers_and_words/helper_classes.rb +1 -1
  6. data/lib/numbers_and_words/helper_classes/array_extensions/helpers.rb +11 -12
  7. data/lib/numbers_and_words/helper_classes/figures_array.rb +1 -4
  8. data/lib/numbers_and_words/helper_classes/words_array.rb +2 -4
  9. data/lib/numbers_and_words/i18n.rb +4 -4
  10. data/lib/numbers_and_words/i18n/initialization.rb +2 -2
  11. data/lib/numbers_and_words/i18n/locales/numbers.en.yml +3 -3
  12. data/lib/numbers_and_words/i18n/locales/numbers.es.yml +86 -25
  13. data/lib/numbers_and_words/i18n/locales/numbers.fr.yml +54 -1
  14. data/lib/numbers_and_words/i18n/locales/numbers.pt-BR.yml +4 -4
  15. data/lib/numbers_and_words/i18n/locales/numbers.pt.yml +0 -1
  16. data/lib/numbers_and_words/i18n/pluralization.rb +2 -3
  17. data/lib/numbers_and_words/i18n/plurals/fr.rb +3 -3
  18. data/lib/numbers_and_words/i18n/plurals/lt.rb +11 -8
  19. data/lib/numbers_and_words/i18n/plurals/lv.rb +3 -3
  20. data/lib/numbers_and_words/i18n/plurals/ru.rb +15 -10
  21. data/lib/numbers_and_words/strategies.rb +1 -1
  22. data/lib/numbers_and_words/strategies/array_joiner.rb +1 -2
  23. data/lib/numbers_and_words/strategies/array_joiner/languages.rb +3 -1
  24. data/lib/numbers_and_words/strategies/array_joiner/languages/base.rb +1 -1
  25. data/lib/numbers_and_words/strategies/array_joiner/languages/es.rb +10 -0
  26. data/lib/numbers_and_words/strategies/array_joiner/languages/families/base.rb +0 -1
  27. data/lib/numbers_and_words/strategies/array_joiner/languages/fr.rb +10 -0
  28. data/lib/numbers_and_words/strategies/figures_converter.rb +1 -2
  29. data/lib/numbers_and_words/strategies/figures_converter/decorators.rb +8 -6
  30. data/lib/numbers_and_words/strategies/figures_converter/decorators/base.rb +2 -2
  31. data/lib/numbers_and_words/strategies/figures_converter/decorators/en/base.rb +1 -1
  32. data/lib/numbers_and_words/strategies/figures_converter/decorators/en/fractional.rb +2 -3
  33. data/lib/numbers_and_words/strategies/figures_converter/decorators/en/integral.rb +1 -1
  34. data/lib/numbers_and_words/strategies/figures_converter/decorators/es.rb +3 -0
  35. data/lib/numbers_and_words/strategies/figures_converter/decorators/es/base.rb +12 -0
  36. data/lib/numbers_and_words/strategies/figures_converter/decorators/es/fractional.rb +38 -0
  37. data/lib/numbers_and_words/strategies/figures_converter/decorators/es/integral.rb +12 -0
  38. data/lib/numbers_and_words/strategies/figures_converter/decorators/fr.rb +3 -0
  39. data/lib/numbers_and_words/strategies/figures_converter/decorators/fr/base.rb +12 -0
  40. data/lib/numbers_and_words/strategies/figures_converter/decorators/fr/fractional.rb +37 -0
  41. data/lib/numbers_and_words/strategies/figures_converter/decorators/fr/integral.rb +12 -0
  42. data/lib/numbers_and_words/strategies/figures_converter/decorators/hu.rb +1 -1
  43. data/lib/numbers_and_words/strategies/figures_converter/decorators/hu/base.rb +1 -1
  44. data/lib/numbers_and_words/strategies/figures_converter/decorators/hu/fractional.rb +2 -3
  45. data/lib/numbers_and_words/strategies/figures_converter/decorators/hu/integral.rb +1 -1
  46. data/lib/numbers_and_words/strategies/figures_converter/decorators/pt-BR/fractional.rb +1 -2
  47. data/lib/numbers_and_words/strategies/figures_converter/decorators/ru/base.rb +1 -1
  48. data/lib/numbers_and_words/strategies/figures_converter/decorators/ru/fractional.rb +2 -3
  49. data/lib/numbers_and_words/strategies/figures_converter/decorators/ru/integral.rb +1 -2
  50. data/lib/numbers_and_words/strategies/figures_converter/decorators/ua/base.rb +1 -1
  51. data/lib/numbers_and_words/strategies/figures_converter/decorators/ua/fractional.rb +2 -3
  52. data/lib/numbers_and_words/strategies/figures_converter/decorators/ua/integral.rb +1 -2
  53. data/lib/numbers_and_words/strategies/figures_converter/languages.rb +1 -1
  54. data/lib/numbers_and_words/strategies/figures_converter/languages/base.rb +1 -1
  55. data/lib/numbers_and_words/strategies/figures_converter/languages/de.rb +9 -9
  56. data/lib/numbers_and_words/strategies/figures_converter/languages/en-GB.rb +1 -1
  57. data/lib/numbers_and_words/strategies/figures_converter/languages/en.rb +17 -19
  58. data/lib/numbers_and_words/strategies/figures_converter/languages/es.rb +50 -25
  59. data/lib/numbers_and_words/strategies/figures_converter/languages/et.rb +1 -2
  60. data/lib/numbers_and_words/strategies/figures_converter/languages/families/base.rb +5 -5
  61. data/lib/numbers_and_words/strategies/figures_converter/languages/families/cyrillic.rb +5 -5
  62. data/lib/numbers_and_words/strategies/figures_converter/languages/families/helpers.rb +10 -14
  63. data/lib/numbers_and_words/strategies/figures_converter/languages/fr.rb +7 -7
  64. data/lib/numbers_and_words/strategies/figures_converter/languages/hu.rb +8 -8
  65. data/lib/numbers_and_words/strategies/figures_converter/languages/ka.rb +8 -10
  66. data/lib/numbers_and_words/strategies/figures_converter/languages/lt.rb +6 -6
  67. data/lib/numbers_and_words/strategies/figures_converter/languages/lv.rb +2 -2
  68. data/lib/numbers_and_words/strategies/figures_converter/languages/pt-BR.rb +24 -26
  69. data/lib/numbers_and_words/strategies/figures_converter/languages/pt.rb +6 -7
  70. data/lib/numbers_and_words/strategies/figures_converter/languages/tr.rb +4 -4
  71. data/lib/numbers_and_words/strategies/figures_converter/options.rb +6 -5
  72. data/lib/numbers_and_words/strategies/figures_converter/options/en-GB/hundreds_with_union.rb +1 -1
  73. data/lib/numbers_and_words/strategies/figures_converter/options/en-GB/ordinal.rb +1 -1
  74. data/lib/numbers_and_words/strategies/figures_converter/options/en-GB/remove_hyphen.rb +1 -1
  75. data/lib/numbers_and_words/strategies/figures_converter/options/en-GB/remove_zero.rb +1 -1
  76. data/lib/numbers_and_words/strategies/figures_converter/options/en/hundreds_with_union.rb +3 -3
  77. data/lib/numbers_and_words/strategies/figures_converter/options/en/ordinal.rb +3 -3
  78. data/lib/numbers_and_words/strategies/figures_converter/options/en/pronounced.rb +14 -23
  79. data/lib/numbers_and_words/strategies/figures_converter/options/en/remove_hyphen.rb +2 -3
  80. data/lib/numbers_and_words/strategies/figures_converter/options/en/remove_zero.rb +2 -2
  81. data/lib/numbers_and_words/strategies/figures_converter/options/es.rb +3 -0
  82. data/lib/numbers_and_words/strategies/figures_converter/options/es/apocopated.rb +28 -0
  83. data/lib/numbers_and_words/strategies/figures_converter/options/es/gender.rb +28 -0
  84. data/lib/numbers_and_words/strategies/figures_converter/options/es/remove_zero.rb +28 -0
  85. data/lib/numbers_and_words/strategies/figures_converter/options/hu/ordinal.rb +3 -3
  86. data/lib/numbers_and_words/strategies/figures_converter/options/pt-BR/gender.rb +2 -2
  87. data/lib/numbers_and_words/strategies/figures_converter/options/pt-BR/ordinal.rb +1 -1
  88. data/lib/numbers_and_words/strategies/figures_converter/options/pt-BR/remove_zero.rb +1 -1
  89. data/lib/numbers_and_words/strategies/figures_converter/options/ru/gender.rb +2 -2
  90. data/lib/numbers_and_words/strategies/figures_converter/options/ua/gender.rb +2 -2
  91. data/lib/numbers_and_words/translations/base.rb +2 -2
  92. data/lib/numbers_and_words/translations/de.rb +5 -5
  93. data/lib/numbers_and_words/translations/es.rb +29 -24
  94. data/lib/numbers_and_words/translations/et.rb +3 -3
  95. data/lib/numbers_and_words/translations/extensions/fraction_significance.rb +4 -5
  96. data/lib/numbers_and_words/translations/families/base.rb +8 -8
  97. data/lib/numbers_and_words/translations/families/cyrillic.rb +6 -6
  98. data/lib/numbers_and_words/translations/families/latin.rb +6 -6
  99. data/lib/numbers_and_words/translations/fr.rb +16 -8
  100. data/lib/numbers_and_words/translations/hu.rb +3 -3
  101. data/lib/numbers_and_words/translations/it.rb +3 -3
  102. data/lib/numbers_and_words/translations/ka.rb +13 -13
  103. data/lib/numbers_and_words/translations/lt.rb +4 -5
  104. data/lib/numbers_and_words/translations/lv.rb +4 -5
  105. data/lib/numbers_and_words/translations/nl.rb +3 -3
  106. data/lib/numbers_and_words/translations/pt-BR.rb +18 -18
  107. data/lib/numbers_and_words/translations/pt.rb +4 -5
  108. data/lib/numbers_and_words/translations/ru.rb +5 -5
  109. data/lib/numbers_and_words/translations/se.rb +2 -2
  110. data/lib/numbers_and_words/translations/tr.rb +3 -4
  111. data/lib/numbers_and_words/translations/ua.rb +3 -3
  112. data/lib/numbers_and_words/version.rb +1 -1
  113. data/lib/numbers_and_words/wrappers.rb +1 -1
  114. data/lib/numbers_and_words/wrappers/float.rb +9 -9
  115. data/lib/numbers_and_words/wrappers/integer.rb +3 -3
  116. metadata +16 -4
  117. data/lib/numbers_and_words/helper_classes/array_extensions/validations.rb +0 -19
  118. data/lib/numbers_and_words/i18n/plurals/pt-BR.rb +0 -15
@@ -2,25 +2,25 @@ module NumbersAndWords
2
2
  module Translations
3
3
  module Families
4
4
  module Base
5
-
6
- def teens numbers, options = {}
5
+ def teens(numbers, options = {})
7
6
  t("#{options[:prefix]}.teens")[numbers[0]]
8
7
  end
9
8
 
10
- def tens number, options = {}
9
+ def tens(number, options = {})
11
10
  t("#{options[:prefix]}.tens")[number]
12
11
  end
13
12
 
14
- def tens_with_ones numbers, options = {}
13
+ def tens_with_ones(numbers, options = {})
15
14
  [tens(numbers[1]), ones(numbers[0], options)].join options[:separator]
16
15
  end
17
16
 
18
- def megs capacity, options = {}
19
- number, mega_name = options[:number], "#{options[:prefix]}.mega"
20
- number ? t(mega(capacity), :count => number) : t(mega_name)[capacity]
17
+ def megs(capacity, options = {})
18
+ number = options[:number]
19
+ mega_name = "#{options[:prefix]}.mega"
20
+ number ? t(mega(capacity), count: number) : t(mega_name)[capacity]
21
21
  end
22
22
 
23
- def mega capacity
23
+ def mega(capacity)
24
24
  t(:mega)[capacity]
25
25
  end
26
26
 
@@ -4,24 +4,24 @@ module NumbersAndWords
4
4
  module Cyrillic
5
5
  include NumbersAndWords::Translations::Families::Base
6
6
 
7
- def ones number, options = {}
7
+ def ones(number, options = {})
8
8
  t(:ones)[options[:gender]][number]
9
9
  end
10
10
 
11
- def tens_with_ones numbers, options = {}
11
+ def tens_with_ones(numbers, options = {})
12
12
  [tens(numbers[1]), ones(numbers[0], options)].join ' '
13
13
  end
14
14
 
15
- def hundreds number, options = {}
15
+ def hundreds(number, _options = {})
16
16
  t(:hundreds)[number]
17
17
  end
18
18
 
19
- def zero options = {}
19
+ def zero(_options = {})
20
20
  t(:ones).values.first[0]
21
21
  end
22
22
 
23
- def integral number, options = {}
24
- t(:integral, :count => number)
23
+ def integral(number, _options = {})
24
+ t(:integral, count: number)
25
25
  end
26
26
  end
27
27
  end
@@ -4,16 +4,16 @@ module NumbersAndWords
4
4
  module Latin
5
5
  include NumbersAndWords::Translations::Families::Base
6
6
 
7
- def ones number, options = {}
8
- t([options[:prefix], :ones].join('.'))[number]
7
+ def zero(options = {})
8
+ t([options[:prefix], :ones].join('.'))[0]
9
9
  end
10
10
 
11
- def hundreds number, options = {}
12
- [t(:ones)[number], t([options[:prefix], :hundreds].join('.'))].join options[:separator] || ' '
11
+ def ones(number, options = {})
12
+ t([options[:prefix], :ones].join('.'))[number]
13
13
  end
14
14
 
15
- def zero options = {}
16
- t([options[:prefix], :ones].join('.'))[0]
15
+ def hundreds(number, options = {})
16
+ [t(:ones)[number], t([options[:prefix], :hundreds].join('.'))].join options[:separator] || ' '
17
17
  end
18
18
  end
19
19
  end
@@ -2,27 +2,35 @@ module NumbersAndWords
2
2
  module Translations
3
3
  class Fr < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
+ include NumbersAndWords::Translations::Extensions::FractionSignificance
5
6
 
6
7
  SPECIAL_TENS_CASE = 8
7
8
 
8
- def tens number, options = {}
9
+ def tens(number, options = {})
9
10
  options[:alone] = true if options[:alone].nil?
10
- (SPECIAL_TENS_CASE == number and options[:alone]) ? t(:eighty) : super(number)
11
+ SPECIAL_TENS_CASE == number && options[:alone] ? t(:eighty) : super(number)
11
12
  end
12
13
 
13
- def tens_with_ones numbers, options = {}
14
+ def tens_with_ones(numbers, _options = {})
14
15
  if [7, 9].include? numbers[1]
15
- [tens(numbers[1] - 1, :alone => false), teens(numbers)].join '-'
16
+ [tens(numbers[1] - 1, alone: false), teens(numbers)].join '-'
16
17
  else
17
18
  union = numbers[0] == 1 ? ' et ' : '-'
18
- [tens(numbers[1], :alone => false), ones(numbers[0])].join union
19
+ [tens(numbers[1], alone: false), ones(numbers[0])].join union
19
20
  end
20
21
  end
21
22
 
22
- def hundreds number, options = {}
23
+ def hundreds(number, options = {})
23
24
  options[:pluralize] = false if options[:pluralize].nil?
24
- hundreds = t(:hundreds, :count => options[:pluralize] ? number : 1)
25
- (number == 1) ? hundreds : [t(:ones)[number], hundreds].join(' ')
25
+ hundreds = t(:hundreds, count: options[:pluralize] ? number : 1)
26
+ number == 1 ? hundreds : [t(:ones)[number], hundreds].join(' ')
27
+ end
28
+
29
+ def micro_prefix(capacity)
30
+ case capacity
31
+ when 2 then t(:hundreds, count: 1)
32
+ when 1 then tens(1)
33
+ end
26
34
  end
27
35
  end
28
36
  end
@@ -4,17 +4,17 @@ module NumbersAndWords
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
  include NumbersAndWords::Translations::Extensions::FractionSignificance
6
6
 
7
- def tens_with_ones numbers, options = {}
7
+ def tens_with_ones(numbers, options = {})
8
8
  ones, tens = numbers
9
9
  [t(:tens_with_ones)[tens], t([options[:prefix], :ones_with_tens].join('.'))[ones]].join ''
10
10
  end
11
11
 
12
- def hundreds number, options = {}
12
+ def hundreds(number, options = {})
13
13
  options[:separator] = ''
14
14
  super number, options
15
15
  end
16
16
 
17
- def micros capacity, number = nil, separator = ''
17
+ def micros(capacity, _number = nil, separator = '')
18
18
  super capacity, nil, separator
19
19
  end
20
20
  end
@@ -3,11 +3,11 @@ module NumbersAndWords
3
3
  class It < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens_with_ones numbers, options = {}
7
- super numbers, :separator => ''
6
+ def tens_with_ones(numbers, _options = {})
7
+ super numbers, separator: ''
8
8
  end
9
9
 
10
- def hundreds number, options = {}
10
+ def hundreds(number, _options = {})
11
11
  [[number], t(:hundreds)].join ' '
12
12
  end
13
13
  end
@@ -22,12 +22,12 @@ module NumbersAndWords
22
22
  range: Range.new(0, 9, false),
23
23
  name: :eighty,
24
24
  multiplicative: 8
25
- },
26
- ]
25
+ }
26
+ ].freeze
27
27
 
28
- def vigesimal_range number
28
+ def vigesimal_range(number)
29
29
  range = nil
30
- TENS_VIGESIMAL_RANGES.each do|item|
30
+ TENS_VIGESIMAL_RANGES.each do |item|
31
31
  if item[:range].include? number
32
32
  range = item
33
33
  break
@@ -37,20 +37,20 @@ module NumbersAndWords
37
37
  range
38
38
  end
39
39
 
40
- def tens_with_ones numbers, options = {}
40
+ def tens_with_ones(numbers, _options = {})
41
41
  range = vigesimal_range(numbers[1])
42
42
 
43
- if numbers[1] - range[:multiplicative] > 0
44
- minor = teens(numbers)
45
- else
46
- minor = ones(numbers[0])
47
- end
43
+ minor = if numbers[1] - range[:multiplicative] > 0
44
+ teens(numbers)
45
+ else
46
+ ones(numbers[0])
47
+ end
48
48
 
49
49
  [t([:partials, range[:name]].join('.')), minor].join ''
50
50
  end
51
51
 
52
- def hundreds number, options = {}
53
- options[:prefix] ||= (options[:only_hundreds] == true) ? nil : :partials
52
+ def hundreds(number, options = {})
53
+ options[:prefix] ||= options[:only_hundreds] == true ? nil : :partials
54
54
 
55
55
  parts = [t([options[:prefix], :one_hundred].join('.'))]
56
56
  parts.unshift(ones(number, prefix: :partials)) if number > 1
@@ -58,7 +58,7 @@ module NumbersAndWords
58
58
  parts.join ''
59
59
  end
60
60
 
61
- def megs capacity, options = {}
61
+ def megs(capacity, options = {})
62
62
  if capacity == 1
63
63
  t([options[:prefix], :one_thousand].join('.'))
64
64
  elsif capacity == 2
@@ -3,16 +3,15 @@ module NumbersAndWords
3
3
  class Lt < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens number, options = {}
6
+ def tens(number, _options = {})
7
7
  super(number)
8
8
  end
9
9
 
10
- def tens_with_ones numbers, options = {}
11
- [tens(numbers[1], :alone => false), ones(numbers[0])].join ' '
10
+ def tens_with_ones(numbers, _options = {})
11
+ [tens(numbers[1], alone: false), ones(numbers[0])].join ' '
12
12
  end
13
13
 
14
-
15
- def hundreds number, options = {}
14
+ def hundreds(number, options = {})
16
15
  options[:is_hundred] = false if options[:is_hundred].nil?
17
16
  options[:is_hundred] ? t(:one_hundred) : t(:hundreds)[number - 1]
18
17
  end
@@ -3,16 +3,15 @@ module NumbersAndWords
3
3
  class Lv < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens number, options = {}
6
+ def tens(number, _options = {})
7
7
  super(number)
8
8
  end
9
9
 
10
- def tens_with_ones numbers, options = {}
11
- [tens(numbers[1], :alone => false), ones(numbers[0])].join ' '
10
+ def tens_with_ones(numbers, _options = {})
11
+ [tens(numbers[1], alone: false), ones(numbers[0])].join ' '
12
12
  end
13
13
 
14
-
15
- def hundreds number, options = {}
14
+ def hundreds(number, options = {})
16
15
  options[:is_hundred] = false if options[:is_hundred].nil?
17
16
  options[:is_hundred] ? t(:one_hundred) : t(:hundreds)[number - 1]
18
17
  end
@@ -3,12 +3,12 @@ module NumbersAndWords
3
3
  class Nl < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens_with_ones numbers, options = {}
6
+ def tens_with_ones(numbers, _options = {})
7
7
  [ones(numbers[0]), tens(numbers[1])].join 'en'
8
8
  end
9
9
 
10
- def hundreds number, options = {}
11
- 1 == number ? t(:hundreds) : [t(:ones)[number], t(:hundreds)].join
10
+ def hundreds(number, _options = {})
11
+ number == 1 ? t(:hundreds) : [t(:ones)[number], t(:hundreds)].join
12
12
  end
13
13
  end
14
14
  end
@@ -4,20 +4,20 @@ module NumbersAndWords
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
  include NumbersAndWords::Translations::Extensions::FractionSignificance
6
6
 
7
- def integral number, options = {}
8
- t(:integral, :count => number)
7
+ def integral(number, _options = {})
8
+ t(:integral, count: number)
9
9
  end
10
10
 
11
- def zero options = {}
11
+ def zero(options = {})
12
12
  t([options[:prefix], :ones, :male].join('.'))[0]
13
13
  end
14
14
 
15
- def ones number, options = {}
15
+ def ones(number, options = {})
16
16
  return if options[:is_one_thousand]
17
17
  t([options[:prefix], :ones, options[:gender]].join('.'))[number]
18
18
  end
19
19
 
20
- def tens number, options = {}
20
+ def tens(number, options = {})
21
21
  options[:alone] = true if options[:alone].nil?
22
22
  path = [options[:prefix], :tens]
23
23
  path.push(options[:gender]) if ordinal? options
@@ -25,25 +25,25 @@ module NumbersAndWords
25
25
  options[:alone] ? translated : "#{union} " + translated
26
26
  end
27
27
 
28
- def teens number, options = {}
28
+ def teens(number, options = {})
29
29
  return [tens(1, options), ' ', ones(number[0], options)].join if ordinal? options
30
30
  super(number, options)
31
31
  end
32
32
 
33
- def tens_with_ones numbers, options = {}
33
+ def tens_with_ones(numbers, options = {})
34
34
  connector = ' '
35
- connector = " #{union} " unless ordinal? options
35
+ connector = " #{union} " unless ordinal? options
36
36
  [tens(numbers[1], options), connector, ones(numbers[0], options)].join
37
37
  end
38
38
 
39
- def hundreds number, options = {}
40
- return t(:one_hundred) if options[:is_one_hundred] and !(ordinal? options)
39
+ def hundreds(number, options = {})
40
+ return t(:one_hundred) if options[:is_one_hundred] && !(ordinal? options)
41
41
  translated = t([options[:prefix], :hundreds, options[:gender]].join('.'))[number - 1]
42
42
  return translated if ordinal? options
43
43
  options[:is_hundred] ? translated : translated + " #{union}"
44
44
  end
45
45
 
46
- def megs capacity, options = {}
46
+ def megs(capacity, options = {})
47
47
  return t([options[:prefix], :mega, options[:gender]].join('.'))[capacity] if ordinal? options
48
48
 
49
49
  options[:is_one] = false if options[:is_one].nil?
@@ -54,22 +54,22 @@ module NumbersAndWords
54
54
  (options[:is_one] ? t(:mega)[capacity] : t(:megas)[capacity]) + suffix
55
55
  end
56
56
 
57
- def micros capacity, number, separator = ' de '
57
+ def micros(capacity, number, separator = t('micro_prefix.separator'))
58
58
  micro, prefix = capacity
59
- micros = number ? t(micro(micro), :count => number) : micro(micro)
60
- [micro_prefix(prefix, number), micros].compact.join separator
59
+ micros = number ? t(micro(micro), count: number) : micro(micro)
60
+ [micro_prefix(prefix, number), micros].compact.join(" #{separator} ")
61
61
  end
62
62
 
63
- def micro_prefix capacity, number
63
+ def micro_prefix(capacity, number)
64
64
  case capacity
65
- when 2 then t('micro_prefix.hundreds', :count => number)
66
- when 1 then t('micro_prefix.tens', :count => number)
65
+ when 2 then t('micro_prefix.hundreds', count: number)
66
+ when 1 then t('micro_prefix.tens', count: number)
67
67
  end
68
68
  end
69
69
 
70
70
  private
71
71
 
72
- def ordinal? options
72
+ def ordinal?(options)
73
73
  options[:prefix] == :ordinal
74
74
  end
75
75
  end
@@ -3,25 +3,24 @@ module NumbersAndWords
3
3
  class Pt < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens numbers, options = {}
6
+ def tens(numbers, options = {})
7
7
  options[:alone] = true if options[:alone].nil?
8
8
  options[:alone] ? super(numbers) : "#{t(:union)} " + super(numbers)
9
9
  end
10
10
 
11
- def tens_with_ones numbers, options = {}
11
+ def tens_with_ones(numbers, _options = {})
12
12
  [tens(numbers[1]), " #{t(:union)} ", ones(numbers[0])].join
13
13
  end
14
14
 
15
- def hundreds number, options = {}
15
+ def hundreds(number, options = {})
16
16
  return t(:one_hundred) if options[:is_one_hundred]
17
17
  options[:is_hundred] ? t(:hundreds)[number - 1] : t(:hundreds)[number - 1] + ' e'
18
18
  end
19
19
 
20
- def megs capacity, options = {}
20
+ def megs(capacity, options = {})
21
21
  options[:is_one] = false if options[:is_one].nil?
22
22
  options[:is_one] ? t(:mega)[capacity] : t(:megas)[capacity]
23
23
  end
24
-
25
24
  end
26
25
  end
27
26
  end
@@ -4,22 +4,22 @@ module NumbersAndWords
4
4
  include NumbersAndWords::Translations::Families::Cyrillic
5
5
  include NumbersAndWords::Translations::Extensions::FractionSignificance
6
6
 
7
- def micros capacity, number = nil, separator = ' '
7
+ def micros(capacity, number = nil, separator = ' ')
8
8
  micro, prefix = capacity
9
- micros = t(:micro, :count => number)[micro]
9
+ micros = t(:micro, count: number)[micro]
10
10
  [micro_prefix(prefix), micros].compact.join separator
11
11
  end
12
12
 
13
- def micro_prefix capacity
13
+ def micro_prefix(capacity)
14
14
  case capacity
15
15
  when 2 then t(:sub_micro)[2]
16
16
  when 1 then t(:sub_micro)[1]
17
17
  end
18
18
  end
19
19
 
20
- #def fraction_separator options = {}
20
+ # def fraction_separator options = {}
21
21
  # super if options[:with_fractional_separator]
22
- #end
22
+ # end
23
23
  end
24
24
  end
25
25
  end
@@ -3,8 +3,8 @@ module NumbersAndWords
3
3
  class Se < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens_with_ones numbers, options = {}
7
- super numbers, :separator => '-'
6
+ def tens_with_ones(numbers, _options = {})
7
+ super numbers, separator: '-'
8
8
  end
9
9
  end
10
10
  end
@@ -3,18 +3,17 @@ module NumbersAndWords
3
3
  class Tr < Base
4
4
  include NumbersAndWords::Translations::Families::Latin
5
5
 
6
- def tens_with_ones numbers, options = {}
7
- super numbers, :separator => ' '
6
+ def tens_with_ones(numbers, _options = {})
7
+ super numbers, separator: ' '
8
8
  end
9
9
 
10
- def hundreds number, options = {}
10
+ def hundreds(number, options = {})
11
11
  if number == 1
12
12
  [t([options[:prefix], :hundreds].join('.'))].join options[:separator] || ' '
13
13
  else
14
14
  [t(:ones)[number], t([options[:prefix], :hundreds].join('.'))].join options[:separator] || ' '
15
15
  end
16
16
  end
17
-
18
17
  end
19
18
  end
20
19
  end