store_as_int 0.0.10 → 0.0.11

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/store_as_int/base.rb +8 -2
  3. metadata +3 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 237e8f13fbdf567a8e6a3a87adaf4633185ef1df45ee94deec35109ad3cc2a93
4
- data.tar.gz: 85df459643cd74d291996079526a7f2716dd476ffe16fb2fac3569f3f73e34e3
3
+ metadata.gz: acad5594e8ba1902641c9135c0a778f9d83b21035c113bf001dea7b1074127ab
4
+ data.tar.gz: 9a2a071db0e6a75399a40a41ab3db7a873f0a9d2036d23575a35f01262e556eb
5
5
  SHA512:
6
- metadata.gz: be707c1a0705d8ad41d391c7d25014c5bd661b48fafe9762ef51697bd8412625c90d58fc2e436b30f042d4a11e4a2ae96b4cd870563dc1001e9a097cad269b7b
7
- data.tar.gz: 2061b6c4e2c1eed125753fe8c672d43d31a37d69dca3eb6b27b0e617a828b7ad6e806f76f907fc92d649d25009bf1780b97cd0c7a0057d6ea008b0dee603ece0
6
+ metadata.gz: 1dd70bf6cbf4d8c7d09b68ccef64c694b29a680e4eb15e5ccf125893b7ac9fb9a309e814dc8b34d2bc8608bfe039223758653d936c126798361349d5555ce9e5
7
+ data.tar.gz: e13c91cb3a4efbb70e4b8fcc8cb661e32aa146a295465153bb580186e0c4d0fa5434f005c81f7498c9c09ecb7b3eaa9a4174b3036a898984443ab27ded034de7
@@ -28,11 +28,15 @@ module StoreAsInt
28
28
  ) || !!(
29
29
  other.instance_of?(String) &&
30
30
  (
31
- other.gsub(/(,|\s)/, '') =~ /^(\-|\+)?#{Regexp.quote("\\#{sym}" || '[^0-9]')}?([0-9]+)(\.[0-9]+)?$/
31
+ other.gsub(/(,|\s)/, '') =~ matcher
32
32
  )
33
33
  )
34
34
  end
35
35
 
36
+ def self.matcher
37
+ /^(\-|\+)?(?:#{sym.to_s.size > 0 ? Regexp.quote(sym.to_s) : '[^0-9]'}+)?([0-9]+)(\.[0-9]+)?$/
38
+ end
39
+
36
40
  def self.accuracy
37
41
  self::ACCURACY || 0
38
42
  end
@@ -109,8 +113,10 @@ module StoreAsInt
109
113
  new_val =
110
114
  new_val.
111
115
  gsub(/(,|\s)/, '').
112
- match(/(\-|\+)?#{Regexp.quote("\\#{sym}" || '[^0-9]')}?([0-9]+)(\.[0-9]+)?$/)[1..-1].join("")
116
+ match(self.class.matcher)[1..-1].join("")
113
117
  rescue NoMethodError
118
+ puts $!.message
119
+ puts $!.backtrace
114
120
  return self.num = 0
115
121
  end
116
122
  end
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.10
4
+ version: 0.0.11
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sampson Crowley
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-06-11 00:00:00.000000000 Z
11
+ date: 2018-06-12 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
@@ -40,7 +40,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
40
40
  version: '0'
41
41
  requirements: []
42
42
  rubyforge_project:
43
- rubygems_version: 2.7.6
43
+ rubygems_version: 2.7.7
44
44
  signing_key:
45
45
  specification_version: 4
46
46
  summary: Store values as integers for lossless calculations