subunit 0.7.0 → 0.8.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ecc45950417e19ac0a19525e892afae96c9bdfd000e13ecd5638e19cf210a564
4
- data.tar.gz: 8332af06d795048f2736f31a11c5ffecf59dbe7a8005a2ed7751e9b5b4037725
3
+ metadata.gz: 4466d231e3c336adf393301ac33736362e1ba2996bfa0a42f2ca56be949ffbff
4
+ data.tar.gz: daff11e883761163e31f79d431f91ad1ad10790f613359a0aa593a29da82a57a
5
5
  SHA512:
6
- metadata.gz: 407ad2ccc1947d1adc2f32c98a606bda8d453be2bc18217b48a09ee9ac6010568db36e54577069188ad4ac319f17cf336ca60d691e524efd55f2c4e8eff92b72
7
- data.tar.gz: 3360ae777ff80f1f7f81735be7321dea7bc7542c8903467c6427cd4dcbaf168dfc8c01453100fe55db6e385ff7a8717f2f0cf2f3073aaf562e4d148376b83dfb
6
+ metadata.gz: cd3f645fc57ea4badfbc121d02ba36edc240b063bebb468804dfe5a451b9d6abf084b3c59cc346302fad9e2fbda381aa82831f677789ac6c8bfd99b305dbf9fd
7
+ data.tar.gz: 2fefff70fc6f6144c2f4fc5c0c691bd354ce42f770478ad8c8c93e8860175d833021900fc2b84ef6a363bd45eda21ef8dd4d4bb9b4fa83632425609d8f0e69db
Binary file
data.tar.gz.sig CHANGED
Binary file
@@ -2,6 +2,18 @@
2
2
 
3
3
  # file: subunit.rb
4
4
 
5
+ module SubunitFracture
6
+
7
+ refine Integer do
8
+
9
+ def strfunit(s)
10
+ Subunit.seconds(self).strfunit(s)
11
+ end
12
+
13
+ end
14
+
15
+ end
16
+
5
17
  class Subunit
6
18
 
7
19
  def self.seconds(val)
@@ -16,13 +28,22 @@ class Subunit
16
28
 
17
29
  @raw_units = raw_units
18
30
 
19
- if obj.is_a? Array then
20
-
31
+
32
+ accumulate = ->(obj) {
21
33
  a = obj[0..-2]
22
34
  len = raw_units.to_a.length
23
35
  val = ([0]*(len-1) + a).slice(-(len), len).zip(raw_units.values)\
24
36
  .inject(0) {|r,x| r + x.inject(:*) }
25
- @to_i = val + obj[-1]
37
+ val + obj[-1]
38
+ }
39
+
40
+ if obj.is_a? String
41
+
42
+ @to_i = accumulate.call obj.split(' ').map(&:to_i)
43
+
44
+ elsif obj.is_a? Array then
45
+
46
+ @to_i = accumulate.call obj
26
47
 
27
48
  else
28
49
 
@@ -149,4 +170,3 @@ class Subunit
149
170
  unit_list.length > 0 ? [unit] + scan_units(unit_list, subunit) : [unit, subunit]
150
171
  end
151
172
  end
152
-
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: subunit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -35,7 +35,7 @@ cert_chain:
35
35
  HowcHg4GymtLLITCF/QtA5tta5SmHAca1POGncsO9QiramFQ9S3Q4O4wcjboVJOp
36
36
  SSxk4InmYoY9Cl2GVQ+d9owo
37
37
  -----END CERTIFICATE-----
38
- date: 2020-09-14 00:00:00.000000000 Z
38
+ date: 2020-10-08 00:00:00.000000000 Z
39
39
  dependencies: []
40
40
  description:
41
41
  email: james@jamesrobertson.eu
metadata.gz.sig CHANGED
Binary file