istox 0.2.15 → 0.2.18

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5dcf442cd8dd270827e55bcc957f9fa2862c04d390d5c1582097fae1638e673a
4
- data.tar.gz: aed8de1bf449846ef9697364897ac0895215362c5413f444538858fd4cdf9a6d
3
+ metadata.gz: e744a42229dc85a16fba77b03ac23b602c990e887468b26cad8d1918027bd590
4
+ data.tar.gz: 36919909f41cfc6dc4c49f8c2295e2712d654220c05675136231746daf78fca3
5
5
  SHA512:
6
- metadata.gz: 72b97430930b5d79fa173ea9720ffbb479a8313857d6206f9c114190f6a2ce50b770685d395cb7e12456351829b937943b00d98df87cbfd8eca87c241bb631ba
7
- data.tar.gz: eb27d9d006914505ef2bb16cda935a57fb03481c6e3035191bb7e888eb417afcde41a0893e511f72425b8860364546e3ae5fedb91ef66e6fb093467a88574af1
6
+ metadata.gz: 42c9c0b13d5ab66674162cd23248c0211f3101727118fd658464ca1d3513bdee25bb81679675186043e4e75b8cb98e344406a4d2fb5d73de1730ff41c15e2f72
7
+ data.tar.gz: cc87304361314598728938cf1649f7afd1436944fa8dba2f7e581084eecc8899f70f881519bd52a3fe2b4f19df7f8a2cbec71f4c56654503ecbc4c1ff44cab95
data/.gitignore CHANGED
File without changes
data/.rubocop.yml CHANGED
File without changes
data/.solargraph.yml CHANGED
File without changes
data/CODE_OF_CONDUCT.md CHANGED
File without changes
data/Gemfile CHANGED
File without changes
data/README.md CHANGED
File without changes
data/Rakefile CHANGED
File without changes
File without changes
@@ -1,4 +1,4 @@
1
- # rubocop:disable Naming/UncommunicativeMethodParamName
1
+ # rubocop:disable Naming/MethodParameterName
2
2
  module Istox
3
3
  class FMath
4
4
  class << self
@@ -74,6 +74,21 @@ module Istox
74
74
  ::BigDecimal.new(x.to_s).round(digits).to_s
75
75
  end
76
76
 
77
+ def round_half_up(x, digits)
78
+ BigDecimal.mode(BigDecimal::ROUND_MODE, :half_up)
79
+ x = 0 if x.blank?
80
+ ::BigDecimal.new(x.to_s).round(digits).to_s
81
+ end
82
+
83
+ # rounding mechanism can be 'down', 'up', or 'natural'
84
+ # by default will be :down
85
+ def round(x, digits, rounding_mechanism: 'down')
86
+ return round_up(x, digits) if rounding_mechanism == 'up'
87
+ return round_half_up(x, digits) if rounding_mechanism == 'natural'
88
+
89
+ round_down(x, digits)
90
+ end
91
+
77
92
  private
78
93
 
79
94
  def to_fixed(x)
@@ -86,4 +101,4 @@ module Istox
86
101
  end
87
102
  end
88
103
  end
89
- # rubocop:enable Naming/UncommunicativeMethodParamName
104
+ # rubocop:enable Naming/MethodParameterName
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/istox/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Istox
2
- VERSION = '0.2.15'.freeze
2
+ VERSION = '0.2.18'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: istox
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.15
4
+ version: 0.2.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - Siong Leng
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-08-15 00:00:00.000000000 Z
11
+ date: 2021-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: amazing_print
@@ -534,7 +534,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
534
534
  - !ruby/object:Gem::Version
535
535
  version: '0'
536
536
  requirements: []
537
- rubygems_version: 3.0.6
537
+ rubygems_version: 3.2.11
538
538
  signing_key:
539
539
  specification_version: 4
540
540
  summary: istox backend shared gem