combo_data 0.0.3 → 0.0.4

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: f84bdf0a652f4b7ad5f5878c52fd2d2e2d6bdbde
4
+ data.tar.gz: 808dd5fcce7bcb875709634f03b629295834b9a3
5
+ SHA512:
6
+ metadata.gz: 7745da4f31677dcec6a9e0bdffa4d3a2982397ceaf1c074ecbb1050bcfb667d6511ebdf09bf83103942a13679633811644b6962a332e444680217ff0b92f18d5
7
+ data.tar.gz: 4955606544f64622720099eaee265d35d85330bcb4671afa4e1ed59411e978edd5e3618339c7b3d186ec7cf933cdaf834f88fc096e2a6b64ac8af28fe3fc4aec
@@ -15,9 +15,7 @@ module ComboData
15
15
 
16
16
  def combinations_summing_to(value)
17
17
  @search_value = value
18
- Timeout.timeout(@timeout) do
19
- sum_hash(@data.reject{ |v| v > @search_value}).select{ |addends, sum| sum.round(@precision) == @search_value.round(@precision) }
20
- end
18
+ sum_hash(@data.reject{ |v| v > @search_value}).select{ |addends, sum| sum.round(@precision) == @search_value.round(@precision) }
21
19
  end
22
20
 
23
21
  def pairs_with_a_difference_of(value)
@@ -33,13 +31,15 @@ module ComboData
33
31
  threads = []
34
32
  results = {}
35
33
  begin
36
- (1..@max_combination_length).each do |combination_length|
37
- threads << Thread.new(combination_length) { |n|
38
- data.combination(n){ |combo| results[combo] = combo_sum(combo) if combo_sum(combo) == @search_value }
39
- }
40
- end
41
- threads.each{ |thread| thread.join }
42
- results
34
+ Timeout.timeout(@timeout) do
35
+ (1..@max_combination_length).each do |combination_length|
36
+ threads << Thread.new(combination_length) { |n|
37
+ data.combination(n){ |combo| results[combo] = combo_sum(combo) if combo_sum(combo) == @search_value }
38
+ }
39
+ end
40
+ threads.each{ |thread| thread.join }
41
+ results
42
+ end
43
43
  rescue
44
44
  threads.each{ |thread| Thread.kill(thread) }
45
45
  raise "\nThe process timed out. \nThe current timeout is set to #{@timeout} seconds."
@@ -49,9 +49,9 @@ module ComboData
49
49
  def difference_hash(data = [])
50
50
  # only checking the differences between value pairs
51
51
  # changing the max_combination_length will have no effect here
52
- my_hash = {}
53
- data.combination(2){ |pair| my_hash[pair] = pair_diff(pair) if pair_diff(pair) == @search_value }
54
- my_hash
52
+ results = {}
53
+ data.combination(2){ |pair| results[pair] = pair_diff(pair) if pair_diff(pair) == @search_value }
54
+ results
55
55
  end
56
56
 
57
57
  def combo_sum(combo)
@@ -1,3 +1,3 @@
1
1
  module ComboData
2
- VERSION = "0.0.3"
2
+ VERSION = "0.0.4"
3
3
  end
metadata CHANGED
@@ -1,57 +1,50 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: combo_data
3
- version: !ruby/object:Gem::Version
4
- prerelease: false
5
- segments:
6
- - 0
7
- - 0
8
- - 3
9
- version: 0.0.3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.4
10
5
  platform: ruby
11
- authors:
6
+ authors:
12
7
  - Kyle Smith
13
8
  autorequire:
14
9
  bindir: bin
15
10
  cert_chain: []
16
-
17
- date: 2013-10-15 00:00:00 -05:00
18
- default_executable:
19
- dependencies:
20
- - !ruby/object:Gem::Dependency
11
+ date: 2013-10-15 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
21
14
  name: bundler
22
- prerelease: false
23
- requirement: &id001 !ruby/object:Gem::Requirement
24
- requirements:
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
25
17
  - - ~>
26
- - !ruby/object:Gem::Version
27
- segments:
28
- - 1
29
- - 3
30
- version: "1.3"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
31
20
  type: :development
32
- version_requirements: *id001
33
- - !ruby/object:Gem::Dependency
34
- name: rake
35
21
  prerelease: false
36
- requirement: &id002 !ruby/object:Gem::Requirement
37
- requirements:
38
- - - ">="
39
- - !ruby/object:Gem::Version
40
- segments:
41
- - 0
42
- version: "0"
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
43
34
  type: :development
44
- version_requirements: *id002
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
45
41
  description: Perform analysis of data sets.
46
- email:
42
+ email:
47
43
  - ksmith@wspackaging.com
48
44
  executables: []
49
-
50
45
  extensions: []
51
-
52
46
  extra_rdoc_files: []
53
-
54
- files:
47
+ files:
55
48
  - .gitignore
56
49
  - Gemfile
57
50
  - LICENSE.txt
@@ -61,35 +54,28 @@ files:
61
54
  - lib/combo_data.rb
62
55
  - lib/combo_data/data_set.rb
63
56
  - lib/combo_data/version.rb
64
- has_rdoc: true
65
57
  homepage: https://github.com/K-Y-L-E/combo_data
66
- licenses:
58
+ licenses:
67
59
  - MIT
60
+ metadata: {}
68
61
  post_install_message:
69
62
  rdoc_options: []
70
-
71
- require_paths:
63
+ require_paths:
72
64
  - lib
73
- required_ruby_version: !ruby/object:Gem::Requirement
74
- requirements:
75
- - - ">="
76
- - !ruby/object:Gem::Version
77
- segments:
78
- - 0
79
- version: "0"
80
- required_rubygems_version: !ruby/object:Gem::Requirement
81
- requirements:
82
- - - ">="
83
- - !ruby/object:Gem::Version
84
- segments:
85
- - 0
86
- version: "0"
65
+ required_ruby_version: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ required_rubygems_version: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - '>='
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
87
75
  requirements: []
88
-
89
76
  rubyforge_project:
90
- rubygems_version: 1.3.6
77
+ rubygems_version: 2.0.5
91
78
  signing_key:
92
- specification_version: 3
79
+ specification_version: 4
93
80
  summary: Data Analysis
94
81
  test_files: []
95
-