store_as_int 0.0.17 → 0.0.18
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/store_as_int/base.rb +5 -5
- data/lib/store_as_int/exchange_rate.rb +4 -4
- data/lib/store_as_int/money.rb +4 -4
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4d911577180d2102c143b2c5b04846830e8cec0a3c9e9687014ee0d0c628720e
|
4
|
+
data.tar.gz: dbe23a3fd66f334f4c826a6e3acadf56e25e0ed2c43e3cf4a174d56b85e3a6ef
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 98313ea582b7d00daeee8bf5e80c8b36b91e6cbb9acd3d31a9e8766f5d99fb4399740d010db6962ee0aa0a9269c4dc6a460cd4196e7893208be2653b52060a5d
|
7
|
+
data.tar.gz: c56730ef9aebb7088eba481f811cd17648989afb20df20ebabd4d92948425323821df87cb47b9101a7b91edd09289d12e8e90ccbcab7ca805dcc7e86ec90147b
|
data/lib/store_as_int/base.rb
CHANGED
@@ -278,9 +278,9 @@ module StoreAsInt
|
|
278
278
|
end
|
279
279
|
end
|
280
280
|
|
281
|
-
def to_s(w_sym = false)
|
281
|
+
def to_s(w_sym = false, padding: 0)
|
282
282
|
begin
|
283
|
-
str_format.call(self, w_sym)
|
283
|
+
str_format.call(self, w_sym, padding)
|
284
284
|
rescue
|
285
285
|
puts $!.message
|
286
286
|
puts $!.backtrace
|
@@ -294,12 +294,12 @@ module StoreAsInt
|
|
294
294
|
|
295
295
|
private
|
296
296
|
def str_format
|
297
|
-
@str_format ||= self.class.str_format || ->(passed, w_sym) do
|
298
|
-
return '' unless w_sym || passed.present?
|
297
|
+
@str_format ||= self.class.str_format || ->(passed, w_sym, padding) do
|
298
|
+
return '' unless w_sym || passed.present? || (padding.to_i > 0)
|
299
299
|
str = "#{
|
300
300
|
passed.negative_sign
|
301
301
|
}#{
|
302
|
-
w_sym ? passed.sym : ''
|
302
|
+
(w_sym ? passed.sym : '').to_s.ljust(padding.to_i, ' ')
|
303
303
|
}#{
|
304
304
|
passed.decimals ?
|
305
305
|
sprintf("%0.0#{passed.decimals.to_i}f", passed.to_d.abs) :
|
@@ -26,8 +26,8 @@ module StoreAsInt
|
|
26
26
|
# == Comparison Methods ===================================================
|
27
27
|
|
28
28
|
# == Instance Methods =====================================================
|
29
|
-
def exchange_rate_str
|
30
|
-
to_s(true)
|
29
|
+
def exchange_rate_str(padding: 0)
|
30
|
+
to_s(true, padding: padding.to_i)
|
31
31
|
end
|
32
32
|
|
33
33
|
def to_exchange_rate
|
@@ -36,8 +36,8 @@ module StoreAsInt
|
|
36
36
|
end
|
37
37
|
|
38
38
|
module ActsAsExchangeRateInt
|
39
|
-
def exchange_rate_str
|
40
|
-
to_exchange_rate.to_s(true)
|
39
|
+
def exchange_rate_str(padding: 0)
|
40
|
+
to_exchange_rate.to_s(true, padding: padding.to_i)
|
41
41
|
end
|
42
42
|
|
43
43
|
def to_exchange_rate
|
data/lib/store_as_int/money.rb
CHANGED
@@ -25,8 +25,8 @@ module StoreAsInt
|
|
25
25
|
# == Comparison Methods ===================================================
|
26
26
|
|
27
27
|
# == Instance Methods =====================================================
|
28
|
-
def dollar_str
|
29
|
-
to_s(true)
|
28
|
+
def dollar_str(padding: 0)
|
29
|
+
to_s(true, padding: padding.to_i)
|
30
30
|
end
|
31
31
|
|
32
32
|
def to_cents
|
@@ -35,8 +35,8 @@ module StoreAsInt
|
|
35
35
|
end
|
36
36
|
|
37
37
|
module ActsAsMoneyInt
|
38
|
-
def dollar_str
|
39
|
-
to_cents.to_s(true)
|
38
|
+
def dollar_str(padding: 0)
|
39
|
+
to_cents.to_s(true, padding: padding.to_i)
|
40
40
|
end
|
41
41
|
|
42
42
|
def to_cents
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: store_as_int
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.18
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Sampson Crowley
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2020-01-06 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: Seamlessly store different types of values (such as dollars) as integers
|
14
14
|
email: sampsonsprojects@gmail.com
|
@@ -39,7 +39,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
requirements: []
|
42
|
-
rubygems_version: 3.0.
|
42
|
+
rubygems_version: 3.0.6
|
43
43
|
signing_key:
|
44
44
|
specification_version: 4
|
45
45
|
summary: Store values as integers for lossless calculations
|