totally_lazy 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,16 +1,17 @@
1
- require 'rspec'
2
- require_relative '../lib/totally_lazy'
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
3
2
 
4
3
  describe 'Predicates' do
5
4
 
6
5
  it 'should return only even numbers' do
7
6
  expect(sequence(1,2,3,4,5,6).filter(even)).to eq(sequence(2,4,6))
7
+ expect(sequence(1,2,3,4,5,6).unfilter(odd)).to eq(sequence(2,4,6))
8
8
  expect { sequence(pair(1,2),pair(3,4)).filter(even).entries }.to raise_error(UnsupportedTypeException)
9
9
  end
10
10
 
11
- it 'should return only even numbers' do
12
- expect(sequence(1,2,3,4,5,6).filter(even)).to eq(sequence(2,4,6))
13
- expect { sequence(pair(1,2),pair(3,4)).filter(even).entries }.to raise_error(UnsupportedTypeException)
11
+ it 'should return only odd numbers' do
12
+ expect(sequence(1,2,3,4,5,6).filter(odd)).to eq(sequence(1,3,5))
13
+ expect(sequence(1,2,3,4,5,6).unfilter(even)).to eq(sequence(1,3,5))
14
+ expect { sequence(pair(1,2),pair(3,4)).filter(odd).entries }.to raise_error(UnsupportedTypeException)
14
15
  end
15
16
 
16
17
  it 'should return content as string' do
@@ -33,5 +34,36 @@ describe 'Predicates' do
33
34
  expect(sequence(pair(1,2),pair(3,4)).map(as_array).head.class).to eq(Array)
34
35
  end
35
36
 
37
+ it 'should work with basic where predicates' do
38
+ expect(sequence(1,2,3).filter(where(is greater_than 1))).to eq(sequence(2,3))
39
+ expect(sequence(1,2,3).filter(where(is greater_than 1).and(is less_than 3))).to eq(sequence(2))
40
+ end
41
+
42
+ it 'should work with method where predicates' do
43
+ expect(sequence(pair(1,2),pair(3,4),pair(5,7)).filter(where(key:greater_than(1)).and(value:odd)).to_a).to eq(sequence(pair(5,7)).to_a)
44
+ end
45
+
46
+ it 'should work with inverted value predicates' do
47
+ expect(sequence(1,2,3,4,5).reject(where(is Compare.equal_to 3))).to eq(sequence(1,2,4,5))
48
+ expect(sequence(pair(1,2),pair(3,4),pair(5,7)).reject(where value:odd).to_a).to eq(sequence(pair(1,2),pair(3,4)).to_a)
49
+ expect(sequence(pair(1,2),pair(3,4),pair(5,7)).reject(where value:equals(2)).to_a).to eq(sequence(pair(3,4),pair(5,7)).to_a)
50
+ end
51
+
52
+ it 'should work with symbols as values when applying predicates' do
53
+ expect(sequence(pair(:people,sequence(1,2)), pair(:swans,10)).filter(where(key:equals(:swans))).to_a).to eq(sequence(pair(:swans,10)).to_a)
54
+ end
55
+
56
+ it 'should work with inverted predicates' do
57
+ expect(sequence(1,2,3,4,5).reject(where(is odd))).to eq(sequence(2,4))
58
+ expect(sequence(1,2,3,4,5).reject(odd)).to eq(sequence(2,4))
59
+ expect(sequence(1,2,3,4,5).reject(greater_than 2)).to eq(sequence(1,2))
60
+ expect(sequence(1,2,3,4,5).filter(greater_than 2)).to eq(sequence(3,4,5))
61
+ end
62
+
63
+ it 'should work with regex predicates' do
64
+ expect(sequence(pair('apples','pears'),pair('banana','orange'),pair('apples','melon')).filter(where key:matches(/app/)).to_a).to eq(sequence(pair('apples','pears'),pair('apples','melon')).to_a)
65
+ expect(sequence(pair('apples','pears'),pair('banana','orange'),pair('apples','melon')).reject(where key:matches(/app/)).to_a).to eq(sequence(pair('banana','orange')).to_a)
66
+ end
67
+
36
68
 
37
69
  end
@@ -1,5 +1,4 @@
1
- require 'rspec'
2
- require_relative '../lib/totally_lazy'
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
3
2
 
4
3
  describe 'Sequence' do
5
4
 
@@ -9,6 +8,7 @@ describe 'Sequence' do
9
8
 
10
9
  it 'should support transpose' do
11
10
  expect(sequence(sequence(1, 2), sequence(3, 4), sequence(5, 6)).transpose).to include(sequence(1, 3, 5), sequence(2, 4, 6))
11
+ expect { empty.transpose.entries }.to raise_error(NoSuchElementException)
12
12
  end
13
13
 
14
14
  it 'should eagerly return the first element of a sequence, returns NoSuchElementException if empty' do
@@ -47,9 +47,149 @@ describe 'Sequence' do
47
47
  end
48
48
 
49
49
  it 'should lazily join sequences together' do
50
- expect(sequence(1,2,3).join(sequence(4,5,6))).to eq(sequence(1,2,3,4,5,6))
51
- expect(empty.join(sequence(1,2))).to eq(sequence(1,2))
50
+ expect(sequence(1, 2, 3).join(sequence(4, 5, 6))).to eq(sequence(1, 2, 3, 4, 5, 6))
51
+ expect(empty.join(sequence(1, 2))).to eq(sequence(1, 2))
52
52
  end
53
53
 
54
+ it 'should support select' do
55
+ expect(sequence(1, 2, 3).filter(even)).to eq(sequence(2))
56
+ expect(sequence(1, 2, 3).find_all(even)).to eq(sequence(2))
57
+ expect(sequence(1, 2, 3).select(even)).to eq(sequence(2))
58
+ expect(sequence(1, 2, 3).filter(&:even?)).to eq(sequence(2))
59
+ end
60
+
61
+ it 'should support map' do
62
+ expect(sequence(1, 2, 3).map(as_string)).to eq(sequence('1', '2', '3'))
63
+ expect(sequence(1, 2, 3).collect(as_string)).to eq(sequence('1', '2', '3'))
64
+ expect(sequence(1, 2, 3).map { |x| x.to_s }).to eq(sequence('1', '2', '3'))
65
+ end
66
+
67
+ it 'should support reject' do
68
+ expect(sequence(1, 2, 3).reject(even)).to eq(sequence(1, 3))
69
+ expect(sequence(1, 2, 3).unfilter(even)).to eq(sequence(1, 3))
70
+ expect(sequence(1, 2, 3).reject(&:even?)).to eq(sequence(1, 3))
71
+ end
72
+
73
+ it 'should support grep' do
74
+ expect(sequence('apple', 'pear', 'banana').grep(/p/)).to eq(sequence('apple', 'pear'))
75
+ end
76
+
77
+ it 'should support drop' do
78
+ expect(sequence(1, 2, 3).drop(1)).to eq(sequence(2, 3))
79
+ end
80
+
81
+ it 'should support drop_while' do
82
+ expect(sequence(1, 2, 5, 4, 3).drop_while { |n| n < 5 }).to eq(sequence(5, 4, 3))
83
+ end
84
+
85
+ it 'should support take' do
86
+ expect(sequence(1, 2, 3).take(2)).to eq(sequence(1, 2))
87
+ end
88
+
89
+ it 'should support take_while' do
90
+ expect(sequence(1, 2, 5, 4, 3).take_while { |n| n < 5 }).to eq(sequence(1, 2))
91
+ end
92
+
93
+ it 'should support flat_map' do
94
+ expect(sequence(sequence(1, 2), sequence(3, 4)).flat_map { |s| s }).to eq(sequence(1, 2, 3, 4))
95
+ expect(sequence(pair(1, 2), pair(3, 4)).flat_map { |s| s }).to eq(sequence(1, 2, 3, 4))
96
+ end
97
+
98
+ it 'should support zip' do
99
+ expect(sequence(1, 2, 3).zip(sequence('a', 'b', 'c'))).to eq(sequence([1, 'a'], [2, 'b'], [3, 'c']))
100
+ expect(sequence(1, 2, 3).zip(sequence(4, 5, 6)) { |x| x.reduce(:+) }).to eq(sequence(5, 7, 9))
101
+ end
102
+
103
+ it 'should support item access with get' do
104
+ expect(sequence(1, 2, 3).get(2)).to eq(3)
105
+ expect(sequence(1, 2, 3)[2]).to eq(3)
106
+ end
107
+
108
+ it 'should join the supplied sequence to the existing sequence' do
109
+ expect(sequence(1, 2, 3).join(sequence(4, 5, 6))).to eq(sequence(1, 2, 3, 4, 5, 6))
110
+ expect(sequence(1, 2, 3) << sequence(4, 5, 6)).to eq(sequence(1, 2, 3, 4, 5, 6))
111
+ end
112
+
113
+ it 'should append an item to the sequence (creates new sequence)' do
114
+ expect(sequence(1, 2, 3).append(4)).to eq(sequence(1, 2, 3, 4))
115
+ end
116
+
117
+ it 'should add any item to the sequence (creates new sequence)' do
118
+ expect(sequence(1, 2, 3).add(sequence(4, 5, 6))).to eq(sequence(1, 2, 3, 4, 5, 6))
119
+ expect(sequence(1, 2, 3) + sequence(4, 5, 6)).to eq(sequence(1, 2, 3, 4, 5, 6))
120
+ end
121
+
122
+ it 'should convert a sequence of sequences into a single flattened sequence' do
123
+ expect(sequence(sequence(1,2,3), sequence(4), sequence(5,6,7)).to_seq).to eq(sequence(1, 2, 3, 4, 5, 6,7))
124
+ expect{ sequence(1,2,3).to_seq.entries }.to raise_error(UnsupportedTypeException)
125
+ end
126
+
127
+ it 'should create a sequence of sequences from a sequence of pairs' do
128
+ expect(sequence(pair(1,2),pair(3,4),pair(5,6)).from_pairs).to eq(sequence(1, 2, 3, 4, 5, 6))
129
+ expect {sequence({1=>2}).from_pairs.entries}.to raise_error(UnsupportedTypeException)
130
+ end
131
+
132
+ it 'should convert a sequence to an array' do
133
+ expect(sequence(1, 2, 3).to_a).to eq([1,2,3])
134
+ expect(sequence(pair(1,2),pair(3,4)).to_a).to eq([{1=>2},{3=>4}])
135
+ expect(empty.to_a).to eq([])
136
+ end
137
+
138
+ it 'should get or else the value at an index' do
139
+ expect(sequence(1, 2, 3).get_or_else(0,99)).to eq(1)
140
+ expect(sequence(1, 2, 3).get_or_else(99,1)).to eq(1)
141
+ end
142
+
143
+ it 'should get or else the value at an index' do
144
+ expect(sequence(1, 2, 3).get_or_throw(1,Exception,'oops')).to eq(2)
145
+ expect {sequence(1, 2, 3).get_or_throw(99,Exception,'oops')}.to raise_error(Exception)
146
+ end
147
+
148
+ it 'should get an option at an index' do
149
+ expect(sequence(1, 2, 3).get_option(1)).to eq(some(2))
150
+ expect(sequence(1, 2, 3).get_option(99)).to eq(none)
151
+ end
152
+
153
+ it 'should return all as flattened array' do
154
+ expect(sequence(sequence(1, 2, 3),sequence(4,5,6)).all).to eq([1,2,3,4,5,6])
155
+ end
156
+
157
+ it 'should iterate empty' do
158
+ expect(empty.each{|i| i}).to eq([])
159
+ expect(Empty.new([1,2]).each{|i| i}).to eq([1,2])
160
+ expect(Empty.new([1,2]){|a| a}).to eq(empty)
161
+ end
162
+
163
+ it 'should support from_arrays' do
164
+ expect(sequence([1,2,3,4,5],[6,7]).from_arrays).to eq(sequence(1,2,3,4,5,6,7))
165
+ end
166
+
167
+ it 'should support from_sets' do
168
+ expect(sequence(Set.new([1,2,3,4,5]),Set.new([6,7])).from_sets.entries).to eq(sequence(1,2,3,4,5,6,7).entries)
169
+ end
170
+
171
+ it 'should map concurrently' do
172
+ expect(sequence(1,2,3,4,5).map_concurrently(even)).to eq(sequence(2,4))
173
+ expect(sequence(1,2,3,4,5).map_concurrently{|i| i+1}).to eq(sequence(2,3,4,5,6))
174
+ expect(sequence(1,2,3,4,5).map_concurrently(even,in_threads:2)).to eq(sequence(2,4))
175
+ expect(sequence(1,2,3,4,5).map_concurrently(where(is even),in_processes:2)).to eq(sequence(2,4))
176
+ expect(sequence(1,2,3,4,5).map_concurrently(nil,in_threads:2){|i| i+1}).to eq(sequence(2,3,4,5,6))
177
+ end
178
+
179
+ it 'should each concurrently' do
180
+ expect(sequence(1,2,3).each_concurrently{|i| i }).to eq([1,2,3])
181
+ end
182
+
183
+ it 'should drop nils' do
184
+ expect(sequence(1,nil,2,nil,3).drop_nil).to eq(sequence(1,2,3))
185
+ end
186
+
187
+ it 'should cycle' do
188
+ expect(sequence(1,2,3).cycle.take(6)).to eq(sequence(1,2,3,1,2,3))
189
+ end
190
+
191
+ it 'should get pairs from sequence' do
192
+ expect(sequence(:name,'kings',:age,39).in_pairs.to_a).to eq(sequence(pair(:name,'kings'),pair(:age,39)).to_a)
193
+ end
54
194
 
55
195
  end
@@ -0,0 +1,56 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
2
+
3
+ describe 'Sequence Serialization/Deserialization' do
4
+
5
+ it 'should serialize a sequence' do
6
+ serialized = sequence(pair(7, 8), sequence(1, 2), sequence(3, sequence(5, 6)), sequence(pair(:apple, 99), option(1), none), [10, 11], {:apple => 8, :pear => 9}).serialize
7
+ expect(serialized).to eq([{:type => :pair, :values => {7 => 8}}, {:type => :sequence, :values => [1, 2]}, {:type => :sequence, :values => [3, {:type => :sequence, :values => [5, 6]}]}, {:type => :sequence, :values => [{:type => :pair, :values => {:apple => 99}}, {:type => :some, :values => 1}, {:type => :none, :values => nil}]}, {:type => Array, :values => [10, 11]}, {:type => Hash, :values => [{:type => Array, :values => [:apple, 8]}, {:type => Array, :values => [:pear, 9]}]}])
8
+ end
9
+
10
+ it 'should serialize a pair containing sequences' do
11
+ serialized = sequence(pair(:people,sequence(1,2))).serialize
12
+ expect(serialized).to eq([{:type => :pair, :values => [:people, {:type => :sequence, :values => [1,2]}]}])
13
+ end
14
+
15
+ it 'should deserialize a pair containing sequences' do
16
+ serialized = sequence(pair(:people,sequence(1,2))).serialize
17
+ expect(deserialize(serialized)[0].key).to eq(:people)
18
+ expect(deserialize(serialized)[0].value).to eq(sequence(1,2))
19
+ end
20
+
21
+ it 'should deserialize a serialized sequence containing pair' do
22
+ expect(seq[0].to_map).to eq(pair(7, 8).to_map)
23
+ end
24
+
25
+ it 'should deserialize a serialized sequence containing sequence' do
26
+ expect(seq[1]).to eq(sequence(1, 2))
27
+ end
28
+
29
+ it 'should deserialize a serialized sequence containing nested sequence' do
30
+ expect(seq[2]).to eq(sequence(3, sequence(5, 6)))
31
+ end
32
+
33
+ it 'should deserialize a serialized sequence containing some' do
34
+ expect(seq[3][1]).to eq(option(1))
35
+ end
36
+
37
+ it 'should deserialize a serialized sequence containing none' do
38
+ expect(seq[3][2]).to eq(none)
39
+ end
40
+
41
+ it 'should deserialize a serialized sequence containing an array' do
42
+ expect(seq[4]).to eq([10,11])
43
+ end
44
+
45
+ it 'should deserialize a serialized sequence containing a hash' do
46
+ expect(seq[5]).to eq({:apple => 8, :pear => 9})
47
+ end
48
+
49
+ private
50
+
51
+ def seq
52
+ serialized = sequence(pair(7, 8), sequence(1, 2), sequence(3, sequence(5, 6)), sequence(pair(:apple, 99), option(1), none), [10, 11], {:apple => 8, :pear => 9}).serialize
53
+ deserialize(serialized)
54
+ end
55
+
56
+ end
@@ -0,0 +1,27 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+
4
+ require 'simplecov'
5
+
6
+ SimpleCov.configure do
7
+ load_profile 'test_frameworks'
8
+ end
9
+
10
+ ENV["COVERAGE"] && SimpleCov.start do
11
+ add_filter "/.rvm/"
12
+ add_filter "parallel"
13
+ end
14
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
15
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
16
+
17
+ require 'rspec'
18
+ require 'totally_lazy'
19
+
20
+ # Requires supporting files with custom matchers and macros, etc,
21
+ # in ./support/ and its subdirectories.
22
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each {|f| require f}
23
+
24
+ RSpec.configure do |config|
25
+
26
+ end
27
+
@@ -1,5 +1,4 @@
1
- require 'rspec'
2
- require_relative '../lib/totally_lazy'
1
+ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
3
2
 
4
3
  describe 'Type Check' do
5
4
 
data/totally_lazy.gemspec CHANGED
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: totally_lazy 0.0.4 ruby lib
5
+ # stub: totally_lazy 0.0.5 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "totally_lazy"
9
- s.version = "0.0.4"
9
+ s.version = "0.0.5"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib"]
13
13
  s.authors = ["Kingsley Hendrickse"]
14
- s.date = "2014-08-17"
14
+ s.date = "2014-09-22"
15
15
  s.description = "Port of java functional library totally lazy to ruby"
16
16
  s.email = "kingsleyhendrickse@me.com"
17
17
  s.extra_rdoc_files = [
@@ -21,22 +21,37 @@ Gem::Specification.new do |s|
21
21
  s.files = [
22
22
  ".document",
23
23
  ".rspec",
24
+ ".travis.yml",
24
25
  "Gemfile",
26
+ "Guardfile",
25
27
  "LICENSE.txt",
26
28
  "README.md",
27
29
  "Rakefile",
28
30
  "VERSION",
31
+ "lib/any.rb",
29
32
  "lib/functor.rb",
33
+ "lib/generators.rb",
30
34
  "lib/option.rb",
31
35
  "lib/pair.rb",
32
- "lib/predicates.rb",
36
+ "lib/parallel/parallel.rb",
37
+ "lib/parallel/processor_count.rb",
38
+ "lib/predicates/compare.rb",
39
+ "lib/predicates/conversions.rb",
40
+ "lib/predicates/numbers.rb",
41
+ "lib/predicates/predicates.rb",
42
+ "lib/predicates/where.rb",
43
+ "lib/predicates/where_processor.rb",
33
44
  "lib/sequence.rb",
34
45
  "lib/totally_lazy.rb",
35
46
  "lib/type_check.rb",
47
+ "spec/functor_spec.rb",
48
+ "spec/generators_spec.rb",
36
49
  "spec/option_spec.rb",
37
50
  "spec/pair_spec.rb",
38
51
  "spec/predicate_spec.rb",
39
52
  "spec/sequence_spec.rb",
53
+ "spec/serialization_spec.rb",
54
+ "spec/spec_helper.rb",
40
55
  "spec/type_check_spec.rb",
41
56
  "totally_lazy.gemspec"
42
57
  ]
@@ -55,6 +70,9 @@ Gem::Specification.new do |s|
55
70
  s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
56
71
  s.add_development_dependency(%q<rspec_html_formatter>, ["~> 0.3.0"])
57
72
  s.add_development_dependency(%q<rake>, ["~> 10.3.2"])
73
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
74
+ s.add_development_dependency(%q<coveralls>, [">= 0"])
75
+ s.add_development_dependency(%q<guard-rspec>, [">= 0"])
58
76
  else
59
77
  s.add_dependency(%q<rspec>, ["~> 3.0.0"])
60
78
  s.add_dependency(%q<rdoc>, ["~> 3.12"])
@@ -62,6 +80,9 @@ Gem::Specification.new do |s|
62
80
  s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
63
81
  s.add_dependency(%q<rspec_html_formatter>, ["~> 0.3.0"])
64
82
  s.add_dependency(%q<rake>, ["~> 10.3.2"])
83
+ s.add_dependency(%q<simplecov>, [">= 0"])
84
+ s.add_dependency(%q<coveralls>, [">= 0"])
85
+ s.add_dependency(%q<guard-rspec>, [">= 0"])
65
86
  end
66
87
  else
67
88
  s.add_dependency(%q<rspec>, ["~> 3.0.0"])
@@ -70,6 +91,9 @@ Gem::Specification.new do |s|
70
91
  s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
71
92
  s.add_dependency(%q<rspec_html_formatter>, ["~> 0.3.0"])
72
93
  s.add_dependency(%q<rake>, ["~> 10.3.2"])
94
+ s.add_dependency(%q<simplecov>, [">= 0"])
95
+ s.add_dependency(%q<coveralls>, [">= 0"])
96
+ s.add_dependency(%q<guard-rspec>, [">= 0"])
73
97
  end
74
98
  end
75
99
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: totally_lazy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kingsley Hendrickse
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-08-17 00:00:00.000000000 Z
11
+ date: 2014-09-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -94,6 +94,48 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 10.3.2
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: coveralls
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: guard-rspec
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
97
139
  description: Port of java functional library totally lazy to ruby
98
140
  email: kingsleyhendrickse@me.com
99
141
  executables: []
@@ -104,22 +146,37 @@ extra_rdoc_files:
104
146
  files:
105
147
  - ".document"
106
148
  - ".rspec"
149
+ - ".travis.yml"
107
150
  - Gemfile
151
+ - Guardfile
108
152
  - LICENSE.txt
109
153
  - README.md
110
154
  - Rakefile
111
155
  - VERSION
156
+ - lib/any.rb
112
157
  - lib/functor.rb
158
+ - lib/generators.rb
113
159
  - lib/option.rb
114
160
  - lib/pair.rb
115
- - lib/predicates.rb
161
+ - lib/parallel/parallel.rb
162
+ - lib/parallel/processor_count.rb
163
+ - lib/predicates/compare.rb
164
+ - lib/predicates/conversions.rb
165
+ - lib/predicates/numbers.rb
166
+ - lib/predicates/predicates.rb
167
+ - lib/predicates/where.rb
168
+ - lib/predicates/where_processor.rb
116
169
  - lib/sequence.rb
117
170
  - lib/totally_lazy.rb
118
171
  - lib/type_check.rb
172
+ - spec/functor_spec.rb
173
+ - spec/generators_spec.rb
119
174
  - spec/option_spec.rb
120
175
  - spec/pair_spec.rb
121
176
  - spec/predicate_spec.rb
122
177
  - spec/sequence_spec.rb
178
+ - spec/serialization_spec.rb
179
+ - spec/spec_helper.rb
123
180
  - spec/type_check_spec.rb
124
181
  - totally_lazy.gemspec
125
182
  homepage: http://github.com/kingsleyh/totally_lazy