CreamCheese 1.0.2

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 +7 -0
  2. data/lib/knife.rb +27 -0
  3. metadata +45 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 42ef6193c0b6ffd0d7806707a8f56bbaba2054c1
4
+ data.tar.gz: f3c9c7e74e9b7c8526468c8934d470ff3fa5a7fa
5
+ SHA512:
6
+ metadata.gz: c14ac9e6801d27a984bf51f891c2c0c0330c53b14689fc25b9f46c6a276fae74a14d5d1d7352fa56f2d22e4bf5260661809da3329d0a0d8b7e03fbdbc860f583
7
+ data.tar.gz: fe72e68f30e2d735e53c0054d1546e85681bb8ce900a9d9a19bf3b89236b7fd5c100cce00933bdca7eff8927eac7403e52aa773e7398413beda46089cc440362
data/lib/knife.rb ADDED
@@ -0,0 +1,27 @@
1
+ module CreamCheese
2
+ class Knife
3
+ def self.spread(list, size=list.length, spacer=nil)
4
+ length = list.length
5
+ spaces = size - length
6
+
7
+ spaces_each = spaces / length
8
+ spaces = spaces % length
9
+
10
+ merge = []
11
+
12
+ list.each_with_index do |item, i|
13
+ if item != :SPREAD_SPACER
14
+ spaces_this = spaces_each
15
+ if spaces > 0
16
+ spaces_this += 1
17
+ spaces -= 1
18
+ end
19
+ (0..spaces_this-1).each do
20
+ list.insert(i+1, :SPREAD_SPACER)
21
+ end
22
+ end
23
+ end
24
+ list.map {|item| item == :SPREAD_SPACER ? spacer : item}
25
+ end
26
+ end
27
+ end
metadata ADDED
@@ -0,0 +1,45 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: CreamCheese
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Ben
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2015-11-07 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Spread lists with a CreamCheese::Knife, and put spacers in to even things
14
+ out. `Knife.spread([list], length, [spacer (default=nil)])`
15
+ email: ben@bensites.com
16
+ executables: []
17
+ extensions: []
18
+ extra_rdoc_files: []
19
+ files:
20
+ - lib/knife.rb
21
+ homepage: http://bensites.com
22
+ licenses:
23
+ - MIT
24
+ metadata: {}
25
+ post_install_message:
26
+ rdoc_options: []
27
+ require_paths:
28
+ - lib
29
+ required_ruby_version: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ required_rubygems_version: !ruby/object:Gem::Requirement
35
+ requirements:
36
+ - - ">="
37
+ - !ruby/object:Gem::Version
38
+ version: '0'
39
+ requirements: []
40
+ rubyforge_project:
41
+ rubygems_version: 2.4.7
42
+ signing_key:
43
+ specification_version: 4
44
+ summary: Spread lists like creamcheese!
45
+ test_files: []