extenso_pt 0.6.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/README.md +11 -11
- data/extenso_pt.gemspec +7 -7
- data/lib/extenso_pt/constantes.rb +2 -3
- data/lib/extenso_pt/extenso.rb +46 -46
- data/lib/extenso_pt/romana.rb +10 -8
- data/lib/extenso_pt/version.rb +1 -1
- data/lib/extenso_pt.rb +14 -13
- metadata +8 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8ddaa96b022c342baccbdc6c09fc9b4fdc5dbe0047f411610c0ca90a86959db1
|
4
|
+
data.tar.gz: 1fbbeb3c100c0f046789507d6aecd8a4f9277061d2fcec72f98c6c7cd74eb7c1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d37ed42e21fabe4a9503865c7c7cf1c5f9c0180dcbd36ceabe533de6871cc09d437d51205fa0eb2cd11ab9c41ad0e9127b5a1f0f09e62145519937b5e8276289
|
7
|
+
data.tar.gz: 142dc18b2d31100465851b4714bab65abf46f9038b61636ff206b7237d7f75a9278c5c70e40834d56e506cdfa9371cff62bf620a7462175088020c9de2950717
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# ExtensoPt [![Build Status](https://travis-ci.org/hernanilr/extenso_pt.svg?branch=master)](https://travis-ci.org/hernanilr/extenso_pt)
|
2
2
|
|
3
|
-
|
3
|
+
Produz extenso em portugês de portugal, brasil ou numeracao romana. Os valores podem ser um numerico, uma string de digitos ou um conjunto destes agrupados em (array, range, hash). O extenso pode ser produzido na escala longa (utilizada em todos os países lusófonos) ou na escala curta (utilizada no Brasil) [wiki](https://pt.wikipedia.org/wiki/Escalas_curta_e_longa). Pode ainda produzir numeracao romana e vice versa.
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
@@ -26,19 +26,19 @@ Or install it yourself as:
|
|
26
26
|
"MCCXXXIV".romana => 1234
|
27
27
|
12000000.12.extenso => "DOZE MILHÕES DE EUROS E DOZE CÊNTIMOS"
|
28
28
|
1.01.extenso(msingular:"DÓLAR") => "UM DÓLAR E UM CÊNTIMO"
|
29
|
-
10.1.extenso(mplural:"DÓLARES") => "DEZ DÓLARES E DEZ CÊNTIMOS" # plural inferido <silgular> mais "S"
|
30
29
|
14.01.extenso(mplural:"REAIS",fsingular:"CENTAVO") => "CATORZE REAIS E UM CENTAVO"
|
31
|
-
14.10.extenso(mplural:"REAIS",fsingular:"CENTAVO") => "CATORZE REAIS E DEZ CENTAVOS"
|
32
30
|
14.1.extenso(lc: :br) => "QUATORZE REAIS E DEZ CENTAVOS"
|
33
|
-
|
31
|
+
14.01.extenso(mplural:"REAIS",fplural:"CENTAVOS") => "CATORZE REAIS E UM CENTAVO" # singular inferido = <plural> menos "S"
|
32
|
+
10.1.extenso(mplural:"DÓLARES") => "DEZ DÓLARES E DEZ CÊNTIMOS" # plural inferido = <silgular> mais "S"
|
33
|
+
1e10.extenso(lc: :pt) => "DEZ MIL MILHÕES DE EUROS" # portugal usa escala longa
|
34
34
|
1e10.extenso(lc: :br) => "DEZ BILHÕES DE REAIS" # brasil usa escala curta
|
35
|
-
|
36
|
-
[
|
37
|
-
|
38
|
-
(
|
39
|
-
{:a
|
40
|
-
{:a
|
41
|
-
|
35
|
+
[0.1, 0.2].extenso => ["DEZ CÊNTIMOS","VINTE CÊNTIMOS"]
|
36
|
+
[4, 5, 6, 7].romana => ["IV", "V", "VI", "VII"]
|
37
|
+
(1..2).extenso => ["UM EURO","DOIS EUROS"]
|
38
|
+
(7..9).romana => ["VII", "VIII", "IX"]
|
39
|
+
{:a=>1, :b=>2}.extenso => {:a=>"UM EURO",:b=>"DOIS EUROS"}
|
40
|
+
{:a=>[3, 4], :b=>2}.extenso => {:a=>["TRÊS EUROS", "QUATRO EUROS"],:b=>"DOIS EUROS"}
|
41
|
+
{:a=>["MCMLXVIII", "XIV"], :b=>4}.romana => {:a=>[1968, 14], :b=>"IV"}
|
42
42
|
```
|
43
43
|
|
44
44
|
## Development
|
data/extenso_pt.gemspec
CHANGED
@@ -12,14 +12,14 @@ Gem::Specification.new do |spec|
|
|
12
12
|
spec.homepage = 'https://github.com/hernanilr/extenso_pt'
|
13
13
|
spec.license = 'MIT'
|
14
14
|
|
15
|
-
spec.summary = '
|
16
|
-
'
|
15
|
+
spec.summary = 'Produz extenso em portugês de portugal, brasil '\
|
16
|
+
'ou numeracao romana.'
|
17
17
|
spec.description = spec.summary
|
18
|
-
spec.description += '
|
19
|
-
'
|
20
|
-
'pode ser produzido na escala longa (utilizada em todos os
|
21
|
-
'lusófonos) ou na escala curta (utilizada no Brasil). Pode ainda '
|
22
|
-
'
|
18
|
+
spec.description += 'Os valores podem ser um numerico, uma string de '\
|
19
|
+
'digitos ou um conjunto destes agrupados em (array, range, hash). '\
|
20
|
+
'O extenso pode ser produzido na escala longa (utilizada em todos os '\
|
21
|
+
'países lusófonos) ou na escala curta (utilizada no Brasil). Pode ainda '\
|
22
|
+
'produzir numeracao romana e vice versa.'
|
23
23
|
|
24
24
|
spec.metadata['yard.run'] = 'yard' # use "yard" to build full HTML docs.
|
25
25
|
spec.metadata['homepage_uri'] = spec.homepage
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
# @author Hernani Rodrigues Vaz
|
4
4
|
module ExtensoPt
|
5
|
-
# constantes
|
5
|
+
# constantes de extenso em portugues de portugal ou brasil
|
6
6
|
EXTLC = %i[pt br].freeze
|
7
7
|
A0020 = {
|
8
8
|
pt: ['', 'UM', 'DOIS', 'TRÊS', 'QUATRO', 'CINCO', 'SEIS', 'SETE',
|
@@ -43,7 +43,7 @@ module ExtensoPt
|
|
43
43
|
br: ['', ' MIL', ' MILHÕES', ' BILHÕES', ' TRILHÕES',
|
44
44
|
' QUADRILHÕES', ' QUINTILHÕES', ' SEXTILHÕES'] }.freeze
|
45
45
|
|
46
|
-
# contantes
|
46
|
+
# contantes de numeracao romana
|
47
47
|
ROMAN = { M: 1000, CM: 900,
|
48
48
|
D: 500, CD: 400,
|
49
49
|
C: 100, XC: 90,
|
@@ -51,6 +51,5 @@ module ExtensoPt
|
|
51
51
|
X: 10, IX: 9,
|
52
52
|
V: 5, IV: 4,
|
53
53
|
I: 1 }.freeze
|
54
|
-
# numeral romano
|
55
54
|
RO_RE = /^M*(D?C{0,3}|C[DM])(L?X{0,3}|X[LC])(V?I{0,3}|I[VX])$/i.freeze
|
56
55
|
end
|
data/lib/extenso_pt/extenso.rb
CHANGED
@@ -2,35 +2,35 @@
|
|
2
2
|
|
3
3
|
# @author Hernani Rodrigues Vaz
|
4
4
|
module ExtensoPt
|
5
|
-
# Produz
|
5
|
+
# Produz extenso das centenas em portugues de portugal ou brasil
|
6
6
|
#
|
7
7
|
# @param [Integer] mil o valor dum grupo 3 digitos a converter
|
8
|
-
# @return [String]
|
8
|
+
# @return [String] extenso das centenas
|
9
9
|
def self.e900(mil)
|
10
10
|
A1000[@lc][(mil > 100 ? 1 : 0) + mil / 100] +
|
11
11
|
(mil > 100 && (mil % 100).positive? ? ' E ' : '') # proposicao
|
12
12
|
end
|
13
13
|
|
14
|
-
# Produz
|
14
|
+
# Produz extenso das dezenas em portugues de portugal ou brasil
|
15
15
|
#
|
16
|
-
# @param [Integer] cem
|
17
|
-
# @return [String]
|
16
|
+
# @param [Integer] cem a centena dum grupo 3 digitos a converter
|
17
|
+
# @return [String] extenso das dezenas
|
18
18
|
def self.e090(cem)
|
19
19
|
A0100[@lc][cem / 10] +
|
20
20
|
(cem > 20 && (cem % 10).positive? ? ' E ' : '') # proposicao
|
21
21
|
end
|
22
22
|
|
23
|
-
# Produz
|
23
|
+
# Produz extenso das unidades em portugues de portugal ou brasil
|
24
24
|
#
|
25
|
-
# @param [Integer] cem
|
26
|
-
# @return [String]
|
25
|
+
# @param [Integer] cem a centena dum grupo 3 digitos a converter
|
26
|
+
# @return [String] extenso das unidades
|
27
27
|
def self.e009(cem)
|
28
28
|
A0020[@lc][cem < 20 ? cem : cem % 10]
|
29
29
|
end
|
30
30
|
|
31
|
-
# Produz extenso parte fracionaria em portugues de portugal ou brasil
|
31
|
+
# Produz extenso da parte fracionaria em portugues de portugal ou brasil
|
32
32
|
#
|
33
|
-
# @return [String]
|
33
|
+
# @return [String] extenso da parte fracionaria
|
34
34
|
def self.ef99
|
35
35
|
# parametrizacao por defeito
|
36
36
|
@cs ||= 'CÊNTIMO'
|
@@ -45,7 +45,7 @@ module ExtensoPt
|
|
45
45
|
|
46
46
|
# Produz final da moeda em portugues de portugal ou brasil
|
47
47
|
#
|
48
|
-
# @return [String]
|
48
|
+
# @return [String] final da moeda
|
49
49
|
def self.efim
|
50
50
|
# parametrizacao por defeito
|
51
51
|
@ms ||= 'EURO'
|
@@ -62,7 +62,7 @@ module ExtensoPt
|
|
62
62
|
|
63
63
|
# Produz separador entre grupos 3 digitos
|
64
64
|
#
|
65
|
-
# @param [Integer] pos posicao actual nos grupos 3 digitos
|
65
|
+
# @param [Integer] pos posicao actual nos grupos 3 digitos
|
66
66
|
# @return [String] separador entre grupos 3 digitos
|
67
67
|
def self.edgs(pos)
|
68
68
|
if pos.positive? && @ai[pos - 1].positive?
|
@@ -74,34 +74,27 @@ module ExtensoPt
|
|
74
74
|
|
75
75
|
# Produz qualificador grupo de 3 digitos em portugues de portugal ou brasil
|
76
76
|
#
|
77
|
-
# @param [Integer] pos posicao actual nos grupos 3 digitos
|
77
|
+
# @param [Integer] pos posicao actual nos grupos 3 digitos
|
78
78
|
# @return [String] qualificador grupo de 3 digitos
|
79
79
|
def self.e124(pos)
|
80
80
|
if @ai[pos].positive?
|
81
81
|
@ai[pos] > 1 ? P1E24[@lc][pos] : S1E24[@lc][pos]
|
82
82
|
else
|
83
83
|
''
|
84
|
-
end
|
84
|
+
end + edgs(pos)
|
85
85
|
end
|
86
86
|
|
87
|
-
# Produz extenso grupo 3 digitos em portugues de portugal ou brasil
|
87
|
+
# Produz extenso de grupo 3 digitos em portugues de portugal ou brasil
|
88
88
|
#
|
89
|
-
# @param [Integer] pos posicao actual nos grupos 3 digitos
|
89
|
+
# @param [Integer] pos posicao actual nos grupos 3 digitos
|
90
90
|
# @return [String] extenso grupo 3 digitos
|
91
91
|
def self.edg3(pos)
|
92
|
-
#
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
# caso especial MIL EUROS
|
99
|
-
''
|
100
|
-
else
|
101
|
-
e900(@ai[pos]) + e090(@ai[pos] % 100) + e009(@ai[pos] % 100)
|
102
|
-
end
|
103
|
-
# qualificador grupo de 3 digitos
|
104
|
-
dg3 + e124(pos)
|
92
|
+
# caso especial MIL EUROS
|
93
|
+
if pos == 1 && @ai[pos] == 1
|
94
|
+
''
|
95
|
+
else
|
96
|
+
e900(@ai[pos]) + e090(@ai[pos] % 100) + e009(@ai[pos] % 100)
|
97
|
+
end + e124(pos)
|
105
98
|
end
|
106
99
|
|
107
100
|
# Parametrizar controle singular/plural & proposicoes
|
@@ -112,11 +105,13 @@ module ExtensoPt
|
|
112
105
|
@s6 = @ai[0].to_i + @ai[1].to_i * 2
|
113
106
|
# soma grupos 3.. (digitos acima de 6)
|
114
107
|
@m6 = @ai[2..-1].to_a.inject(:+).to_i * 2
|
115
|
-
|
116
|
-
@
|
108
|
+
# parametrizar controle de proposicao E & singular/plural
|
109
|
+
@tt = @s6 + @m6
|
110
|
+
# parametrizar controle de proposicao DE
|
111
|
+
@de = @s6.zero? && @m6.positive?
|
117
112
|
end
|
118
113
|
|
119
|
-
# Produz
|
114
|
+
# Produz extenso em portugues de portugal ou brasil
|
120
115
|
#
|
121
116
|
# @param [Integer] pos posicao actual nos grupos 3 digitos do valor monetario
|
122
117
|
# @param [String] ext extenso em construcao
|
@@ -124,27 +119,32 @@ module ExtensoPt
|
|
124
119
|
def self.etot(pos, ext)
|
125
120
|
# testa fim do valor monetario
|
126
121
|
if pos >= @ai.count
|
127
|
-
# parametrizar
|
122
|
+
# parametrizar variaveis de controle
|
128
123
|
epsp
|
129
124
|
|
130
125
|
# caso especial zero
|
131
126
|
(@tt + @nf).zero? ? 'ZERO ' + @mp : ext + efim
|
132
127
|
else
|
133
|
-
# tratamento
|
134
|
-
etot(pos + 1, edg3(pos) +
|
128
|
+
# tratamento de grupo 3 digitos
|
129
|
+
etot(pos + 1, edg3(pos) + ext)
|
135
130
|
end
|
136
131
|
end
|
137
132
|
|
138
|
-
# Parametrizar parte inteira/fracionaria
|
133
|
+
# Parametrizar parte inteira/fracionaria da string digitos
|
139
134
|
#
|
140
135
|
# @param [String] digitos do valor monetario
|
141
136
|
# @return [void]
|
142
137
|
def self.epif(dig)
|
143
|
-
#
|
138
|
+
# parametrizacao por defeito
|
139
|
+
# the first mention of an @<variable> creates the
|
140
|
+
# instance variable in the current object ie: self = ExtensoPt
|
141
|
+
@lc ||= :pt
|
142
|
+
|
143
|
+
# converte parte inteira da string digitos em array com grupos de 3 digitos
|
144
144
|
# ex: 123022.12 => [22, 123]
|
145
145
|
@ai = dig[/^\d+/].to_s.reverse.scan(/\d{1,3}/).map { |i| i.reverse.to_i }
|
146
146
|
|
147
|
-
# parte fracionaria
|
147
|
+
# obtem parte fracionaria da string digitos
|
148
148
|
# ex: 123022.12 => 12
|
149
149
|
# arredondada a 2 casas decimais (centimos/centavos)
|
150
150
|
@nf = (dig[/\.\d*/].to_f * 100).round
|
@@ -159,26 +159,26 @@ module ExtensoPt
|
|
159
159
|
# array<extensos> se objecto for (Array, Range),
|
160
160
|
# hash<extensos> se objecto for (Hash)
|
161
161
|
def self.eo2e(obj)
|
162
|
-
# converte os valores do Hash nos seus extensos
|
162
|
+
# converte os valores do Hash nos seus extensos
|
163
163
|
if obj.is_a?(Hash) then obj.map { |k, v| [k, eo2e(v)] }.to_h
|
164
|
-
# converte
|
164
|
+
# converte objecto num Array com os valores convertidos em extensos
|
165
165
|
elsif obj.respond_to?(:to_a) then obj.to_a.map { |a| eo2e(a) }
|
166
166
|
else
|
167
167
|
# converte objeto em string digitos utilizando bigdecimal para
|
168
168
|
# evitar problemas com aritmetica virgula flutuante em valores >1e12
|
169
|
-
# parametrizar parte inteira/fracionaria (@ai, @nf)
|
169
|
+
# parametrizar parte inteira/fracionaria (@ai, @nf) da string digitos
|
170
170
|
epif(obj.to_d.to_s('F'))
|
171
171
|
|
172
|
-
# processar extenso - valores >1e24
|
172
|
+
# processar extenso - valores >1e24 sao ignorados
|
173
173
|
@ai.count > 8 ? '' : etot(0, '')
|
174
174
|
end
|
175
175
|
end
|
176
176
|
|
177
177
|
# Parametrizar moeda inferindo singular a partir do plural
|
178
178
|
#
|
179
|
-
# @param [Hash] moeda as opcoes para parametrizar
|
179
|
+
# @param [Hash] moeda as opcoes para parametrizar moeda/fracao
|
180
180
|
# @option moeda [Symbol] :lc locale do extenso -
|
181
|
-
# portugues de portugal (:pt)
|
181
|
+
# portugues de portugal (:pt) portugues do brasil (:br)
|
182
182
|
# @option moeda [String] :msingular moeda no singular -
|
183
183
|
# inferido do plural menos"S"
|
184
184
|
# @option moeda [String] :fsingular fracao no singular -
|
@@ -195,9 +195,9 @@ module ExtensoPt
|
|
195
195
|
|
196
196
|
# Parametrizar moeda inferindo plural a partir do singular
|
197
197
|
#
|
198
|
-
# @param [Hash] moeda as opcoes para parametrizar
|
198
|
+
# @param [Hash] moeda as opcoes para parametrizar moeda/fracao
|
199
199
|
# @option moeda [Symbol] :lc locale do extenso -
|
200
|
-
# portugues de portugal (:pt)
|
200
|
+
# portugues de portugal (:pt) portugues do brasil (:br)
|
201
201
|
# @option moeda [String] :msingular moeda no singular
|
202
202
|
# @option moeda [String] :fsingular fracao no singular
|
203
203
|
# @option moeda [String] :mplural moeda no plural -
|
data/lib/extenso_pt/romana.rb
CHANGED
@@ -2,20 +2,22 @@
|
|
2
2
|
|
3
3
|
# @author Hernani Rodrigues Vaz
|
4
4
|
module ExtensoPt
|
5
|
-
#
|
5
|
+
# Produz numeral romano a partir de inteiro
|
6
6
|
#
|
7
|
-
# @param [Integer]
|
7
|
+
# @param [Integer] inteiro a converter
|
8
8
|
# @return [String] numeral romano
|
9
|
-
def self.ri2r(
|
10
|
-
return '' if
|
9
|
+
def self.ri2r(inteiro)
|
10
|
+
return '' if inteiro.zero?
|
11
11
|
|
12
|
-
|
12
|
+
# numeracao romana nao tem negativos
|
13
|
+
inteiro = inteiro.abs if inteiro.negative?
|
14
|
+
ROMAN.each { |r, v| return r.to_s + ri2r(inteiro - v) if v <= inteiro }
|
13
15
|
end
|
14
16
|
|
15
|
-
#
|
17
|
+
# Produz inteiro a partir de numeral romano
|
16
18
|
#
|
17
|
-
# @param [String] numeral romano
|
18
|
-
# @param [Integer] ultimo
|
19
|
+
# @param [String] numeral romano a converter
|
20
|
+
# @param [Integer] ultimo valor convertido
|
19
21
|
# @return [Integer] inteiro do numeral romano
|
20
22
|
def self.rr2i(numeral, ultimo)
|
21
23
|
return 0 if numeral.empty?
|
data/lib/extenso_pt/version.rb
CHANGED
data/lib/extenso_pt.rb
CHANGED
@@ -10,11 +10,12 @@ require 'extenso_pt/romana'
|
|
10
10
|
module ExtensoPt
|
11
11
|
class Error < StandardError; end
|
12
12
|
|
13
|
-
# Produz extenso
|
13
|
+
# Produz extenso em portugues de portugal ou brasil
|
14
|
+
# (valor numerico pode ser uma string digitos)
|
14
15
|
#
|
15
|
-
# @param [Hash] moeda as opcoes para parametrizar
|
16
|
+
# @param [Hash] moeda as opcoes para parametrizar moeda/fracao
|
16
17
|
# @option moeda [Symbol] :lc locale do extenso -
|
17
|
-
# portugues de portugal (:pt)
|
18
|
+
# portugues de portugal (:pt) portugues do brasil (:br)
|
18
19
|
# @option moeda [String] :msingular moeda no singular
|
19
20
|
# @option moeda [String] :fsingular fracao no singular
|
20
21
|
# @option moeda [String] :mplural moeda no plural
|
@@ -33,32 +34,32 @@ module ExtensoPt
|
|
33
34
|
ExtensoPt.epsi(moeda)
|
34
35
|
ExtensoPt.eppl(moeda)
|
35
36
|
|
36
|
-
# cria extenso
|
37
|
+
# cria extenso em portugues de portugal ou brasil
|
37
38
|
ExtensoPt.eo2e(self)
|
38
39
|
end
|
39
40
|
|
40
|
-
# Testa se
|
41
|
+
# Testa se contem numeracao romana
|
41
42
|
#
|
42
43
|
# @return [true, false] sim ou nao numeracao romana
|
43
44
|
def romana?
|
44
45
|
is_a?(String) ? RO_RE.match?(upcase) : false
|
45
46
|
end
|
46
47
|
|
47
|
-
# Produz numeracao romana a partir de numerico
|
48
|
-
# ou numerico a partir da numeracao romana
|
49
|
-
# (numerico pode ser uma string digitos)
|
48
|
+
# Produz numeracao romana a partir de valor numerico
|
49
|
+
# ou valor numerico a partir da numeracao romana
|
50
|
+
# (valor numerico pode ser uma string digitos)
|
50
51
|
#
|
51
|
-
# @return [String, Integer] numeracao romana ou
|
52
|
+
# @return [String, Integer] numeracao romana ou valor numerico
|
52
53
|
def romana
|
53
54
|
# converte os valores do Hash
|
54
55
|
if is_a?(Hash) then map { |k, v| [k, v.romana] }.to_h
|
55
56
|
# converte objecto num Array com os valores convertidos
|
56
57
|
elsif respond_to?(:to_a) then to_a.map(&:romana)
|
57
58
|
# numeracao romana a partir de inteiro ou string digitos
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
59
|
+
# (ignora parte fracionaria)
|
60
|
+
elsif (inteiro = to_i) != 0 then ExtensoPt.ri2r(inteiro)
|
61
|
+
# inteiro a partir da numeracao romana
|
62
|
+
else RO_RE.match?(to_s) ? ExtensoPt.rr2i(upcase, 0) : ''
|
62
63
|
end
|
63
64
|
end
|
64
65
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: extenso_pt
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hernâni Rodrigues Vaz
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-11-
|
11
|
+
date: 2019-11-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -66,11 +66,11 @@ dependencies:
|
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: 1.4.4
|
69
|
-
description:
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
69
|
+
description: Produz extenso em portugês de portugal, brasil ou numeracao romana.Os
|
70
|
+
valores podem ser um numerico, uma string de digitos ou um conjunto destes agrupados
|
71
|
+
em (array, range, hash). O extenso pode ser produzido na escala longa (utilizada
|
72
|
+
em todos os países lusófonos) ou na escala curta (utilizada no Brasil). Pode ainda
|
73
|
+
produzir numeracao romana e vice versa.
|
74
74
|
email:
|
75
75
|
- hernanirvaz@gmail.com
|
76
76
|
executables: []
|
@@ -117,6 +117,5 @@ requirements: []
|
|
117
117
|
rubygems_version: 3.0.3
|
118
118
|
signing_key:
|
119
119
|
specification_version: 4
|
120
|
-
summary:
|
121
|
-
numeracao romana.
|
120
|
+
summary: Produz extenso em portugês de portugal, brasil ou numeracao romana.
|
122
121
|
test_files: []
|