immutable-ruby 0.0.1 → 0.0.2

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.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/lib/immutable/core_ext/struct.rb +9 -0
  3. data/lib/immutable/enumerable.rb +9 -0
  4. data/lib/immutable/hash.rb +104 -4
  5. data/lib/immutable/list.rb +13 -13
  6. data/lib/immutable/nested.rb +3 -0
  7. data/lib/immutable/vector.rb +21 -11
  8. data/lib/immutable/version.rb +1 -1
  9. data/spec/lib/immutable/hash/dig_spec.rb +34 -0
  10. data/spec/lib/immutable/hash/fetch_values_spec.rb +22 -0
  11. data/spec/lib/immutable/hash/put_spec.rb +9 -0
  12. data/spec/lib/immutable/hash/subset_spec.rb +42 -0
  13. data/spec/lib/immutable/hash/superset_spec.rb +42 -0
  14. data/spec/lib/immutable/hash/to_proc_spec.rb +39 -0
  15. data/spec/lib/immutable/hash/values_at_spec.rb +26 -6
  16. data/spec/lib/immutable/list/all_spec.rb +1 -1
  17. data/spec/lib/immutable/list/any_spec.rb +1 -1
  18. data/spec/lib/immutable/list/at_spec.rb +1 -1
  19. data/spec/lib/immutable/list/construction_spec.rb +1 -1
  20. data/spec/lib/immutable/list/count_spec.rb +1 -1
  21. data/spec/lib/immutable/list/each_slice_spec.rb +1 -1
  22. data/spec/lib/immutable/list/each_spec.rb +1 -1
  23. data/spec/lib/immutable/list/empty_spec.rb +1 -1
  24. data/spec/lib/immutable/list/eql_spec.rb +1 -1
  25. data/spec/lib/immutable/list/find_index_spec.rb +1 -1
  26. data/spec/lib/immutable/list/find_spec.rb +1 -1
  27. data/spec/lib/immutable/list/group_by_spec.rb +1 -1
  28. data/spec/lib/immutable/list/hash_spec.rb +1 -1
  29. data/spec/lib/immutable/list/include_spec.rb +1 -1
  30. data/spec/lib/immutable/list/index_spec.rb +6 -2
  31. data/spec/lib/immutable/list/indices_spec.rb +1 -1
  32. data/spec/lib/immutable/list/inspect_spec.rb +1 -1
  33. data/spec/lib/immutable/list/join_spec.rb +1 -1
  34. data/spec/lib/immutable/list/last_spec.rb +1 -1
  35. data/spec/lib/immutable/list/maximum_spec.rb +1 -1
  36. data/spec/lib/immutable/list/minimum_spec.rb +1 -1
  37. data/spec/lib/immutable/list/multithreading_spec.rb +4 -4
  38. data/spec/lib/immutable/list/none_spec.rb +1 -1
  39. data/spec/lib/immutable/list/one_spec.rb +1 -1
  40. data/spec/lib/immutable/list/product_spec.rb +1 -1
  41. data/spec/lib/immutable/list/reduce_spec.rb +1 -1
  42. data/spec/lib/immutable/list/reverse_spec.rb +1 -1
  43. data/spec/lib/immutable/list/size_spec.rb +1 -1
  44. data/spec/lib/immutable/list/sum_spec.rb +1 -1
  45. data/spec/lib/immutable/list/tail_spec.rb +1 -1
  46. data/spec/lib/immutable/list/to_a_spec.rb +1 -1
  47. data/spec/lib/immutable/list/to_ary_spec.rb +1 -1
  48. data/spec/lib/immutable/nested/construction_spec.rb +11 -5
  49. data/spec/lib/immutable/set/add_spec.rb +4 -2
  50. data/spec/lib/immutable/set/grep_spec.rb +10 -10
  51. data/spec/lib/immutable/set/grep_v_spec.rb +59 -0
  52. data/spec/lib/immutable/vector/dig_spec.rb +30 -0
  53. data/spec/spec_helper.rb +4 -0
  54. metadata +323 -306
@@ -5,7 +5,7 @@ describe Immutable::List do
5
5
  describe "##{method}" do
6
6
  context "on a really big list" do
7
7
  it "doesn't run out of stack" do
8
- -> { Immutable.interval(0, STACK_OVERFLOW_DEPTH).to_a }.should_not raise_error
8
+ -> { BigList.to_a }.should_not raise_error
9
9
  end
10
10
  end
11
11
 
@@ -6,7 +6,7 @@ describe Immutable::List do
6
6
  describe "#to_ary" do
7
7
  context "on a really big list" do
8
8
  it "doesn't run out of stack" do
9
- -> { Immutable.interval(0, STACK_OVERFLOW_DEPTH).to_ary }.should_not raise_error
9
+ -> { BigList.to_ary }.should_not raise_error
10
10
  end
11
11
  end
12
12
 
@@ -26,7 +26,11 @@ describe Immutable do
26
26
  [ ::SortedSet.new, Immutable::SortedSet[] ],
27
27
  [ ::SortedSet.new([1, 2, 3]), Immutable::SortedSet[1, 2, 3] ],
28
28
  [ 42, 42 ],
29
- [ STDOUT, STDOUT ]
29
+ [ STDOUT, STDOUT ],
30
+
31
+ # Struct conversion is one-way (from Ruby core Struct to Immutable::Hash), not back again!
32
+ [ Struct::Customer.new, Immutable::Hash[name: nil, address: nil], true ],
33
+ [ Struct::Customer.new('Dave', '123 Main'), Immutable::Hash[name: 'Dave', address: '123 Main'], true ]
30
34
  ]
31
35
 
32
36
  describe ".from" do
@@ -56,10 +60,12 @@ describe Immutable do
56
60
  end
57
61
 
58
62
  describe ".to_ruby" do
59
- expectations.each do |expected_result, input|
60
- context "with #{input.inspect} as input" do
61
- it "should return #{expected_result.inspect}" do
62
- Immutable.to_ruby(input).should eql(expected_result)
63
+ expectations.each do |expected_result, input, one_way|
64
+ unless one_way
65
+ context "with #{input.inspect} as input" do
66
+ it "should return #{expected_result.inspect}" do
67
+ Immutable.to_ruby(input).should eql(expected_result)
68
+ end
63
69
  end
64
70
  end
65
71
  end
@@ -37,10 +37,12 @@ describe Immutable::Set do
37
37
 
38
38
  it "works on large sets, with many combinations of input" do
39
39
  50.times do
40
- array = (1..500).to_a.sample(100)
40
+ # Array#sample is buggy on RBX 2.5.8; that's why #uniq is needed here
41
+ # See https://github.com/rubinius/rubinius/issues/3506
42
+ array = (1..500).to_a.sample(100).uniq
41
43
  set = S.new(array)
42
44
  to_add = 1000 + rand(1000)
43
- set.add(to_add).size.should == 101
45
+ set.add(to_add).size.should == array.size + 1
44
46
  set.add(to_add).include?(to_add).should == true
45
47
  end
46
48
  end
@@ -8,37 +8,37 @@ describe Immutable::Set do
8
8
 
9
9
  shared_examples "check filtered values" do
10
10
  it "returns the filtered values" do
11
- expect(grep).to eq(filtered)
11
+ expect(grep).to eq(S[*filtered])
12
12
  end
13
13
  end
14
14
 
15
15
  shared_examples "check different types of inputs" do
16
- context "with an empty array" do
16
+ context "with an empty set" do
17
17
  let(:values) { [] }
18
18
  let(:filtered) { [] }
19
19
 
20
- shared_examples "check filtered values"
20
+ include_examples "check filtered values"
21
21
  end
22
22
 
23
- context "with a single item array" do
23
+ context "with a single item set" do
24
24
  let(:values) { ["A"] }
25
25
  let(:filtered) { ["A"] }
26
26
 
27
- shared_examples "check filtered values"
27
+ include_examples "check filtered values"
28
28
  end
29
29
 
30
- context "with a single item array that doesn't contain match" do
30
+ context "with a single item set that doesn't contain match" do
31
31
  let(:values) { [1] }
32
32
  let(:filtered) { [] }
33
33
 
34
- shared_examples "check filtered values"
34
+ include_examples "check filtered values"
35
35
  end
36
36
 
37
- context "with a multi-item array where one isn't a match" do
37
+ context "with a multi-item set where one isn't a match" do
38
38
  let(:values) { ["A", 2, "C"] }
39
39
  let(:filtered) { %w[A C] }
40
40
 
41
- shared_examples "check filtered values"
41
+ include_examples "check filtered values"
42
42
  end
43
43
  end
44
44
 
@@ -49,7 +49,7 @@ describe Immutable::Set do
49
49
  end
50
50
 
51
51
  describe "with a block" do
52
- let(:block) { ->(item) { item.downcase }}
52
+ let(:block) { ->(item) { item }}
53
53
 
54
54
  include_examples "check different types of inputs"
55
55
  end
@@ -0,0 +1,59 @@
1
+ require "spec_helper"
2
+ require "immutable/set"
3
+
4
+ describe Immutable::Set do
5
+ let(:set) { S[*values] }
6
+
7
+ describe "#grep_v" do
8
+ let(:grep_v) { set.grep_v(String, &block) }
9
+
10
+ shared_examples "check filtered values" do
11
+ it "returns the filtered values" do
12
+ expect(grep_v).to eq(S[*filtered])
13
+ end
14
+ end
15
+
16
+ context "without a block" do
17
+ let(:block) { nil }
18
+
19
+ context "with an empty set" do
20
+ let(:values) { [] }
21
+ let(:filtered) { [] }
22
+
23
+ include_examples "check filtered values"
24
+ end
25
+
26
+ context "with a single item set" do
27
+ let(:values) { ["A"] }
28
+ let(:filtered) { [] }
29
+
30
+ include_examples "check filtered values"
31
+ end
32
+
33
+ context "with a single item set that doesn't contain match" do
34
+ let(:values) { [1] }
35
+ let(:filtered) { [1] }
36
+
37
+ include_examples "check filtered values"
38
+ end
39
+
40
+ context "with a multi-item set where one isn't a match" do
41
+ let(:values) { [2, "C", 4] }
42
+ let(:filtered) { [2, 4] }
43
+
44
+ include_examples "check filtered values"
45
+ end
46
+ end
47
+
48
+ describe "with a block" do
49
+ let(:block) { ->(item) { item + 100 }}
50
+
51
+ context "resulting items are processed with the block" do
52
+ let(:values) { [2, "C", 4] }
53
+ let(:filtered) { [102, 104] }
54
+
55
+ include_examples "check filtered values"
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,30 @@
1
+ require "spec_helper"
2
+ require "immutable/vector"
3
+
4
+ describe Immutable::Vector do
5
+ let(:v) { V[1, 2, V[3, 4]] }
6
+
7
+ describe "#dig" do
8
+ it "returns value at the index with one argument" do
9
+ expect(v.dig(0)).to eq(1)
10
+ end
11
+
12
+ it "returns value at index in nested arrays" do
13
+ expect(v.dig(2, 0)).to eq(3)
14
+ end
15
+
16
+ # This is different from Hash#dig, but it matches the behavior of Ruby's
17
+ # built-in Array#dig (except that Array#dig raises a TypeError)
18
+ it "raises an error when indexing deeper than possible" do
19
+ expect { (v.dig(0, 0)) }.to raise_error(NoMethodError)
20
+ end
21
+
22
+ it "returns nil if you index past the end of an array" do
23
+ expect(v.dig(5)).to eq(nil)
24
+ end
25
+
26
+ it "raises an error when indexing with a key vectors don't understand" do
27
+ expect { v.dig(:foo) }.to raise_error(ArgumentError)
28
+ end
29
+ end
30
+ end
@@ -28,6 +28,8 @@ SS = Immutable::SortedSet
28
28
  D = Immutable::Deque
29
29
  EmptyList = Immutable::EmptyList
30
30
 
31
+ Struct.new("Customer", :name, :address)
32
+
31
33
  def fixture(name)
32
34
  File.read(fixture_path(name))
33
35
  end
@@ -47,6 +49,8 @@ else
47
49
  STACK_OVERFLOW_DEPTH = 16_384
48
50
  end
49
51
 
52
+ BigList = Immutable.interval(0, STACK_OVERFLOW_DEPTH)
53
+
50
54
  class DeterministicHash
51
55
  attr_reader :hash, :value
52
56
 
metadata CHANGED
@@ -1,14 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: immutable-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
+ - Alex Dowad
8
+ - Dov Murik
9
+ - Xavier Shay
7
10
  - Simon Harris
8
11
  autorequire:
9
12
  bindir: bin
10
13
  cert_chain: []
11
- date: 2015-09-14 00:00:00.000000000 Z
14
+ date: 2017-11-05 00:00:00.000000000 Z
12
15
  dependencies:
13
16
  - !ruby/object:Gem::Dependency
14
17
  name: concurrent-ruby
@@ -16,115 +19,115 @@ dependencies:
16
19
  requirements:
17
20
  - - "~>"
18
21
  - !ruby/object:Gem::Version
19
- version: '0.8'
22
+ version: 1.0.0
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
- version: '0.8'
29
+ version: 1.0.0
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: bundler
29
32
  requirement: !ruby/object:Gem::Requirement
30
33
  requirements:
31
34
  - - "~>"
32
35
  - !ruby/object:Gem::Version
33
- version: '1.3'
36
+ version: '1.15'
34
37
  type: :development
35
38
  prerelease: false
36
39
  version_requirements: !ruby/object:Gem::Requirement
37
40
  requirements:
38
41
  - - "~>"
39
42
  - !ruby/object:Gem::Version
40
- version: '1.3'
43
+ version: '1.15'
41
44
  - !ruby/object:Gem::Dependency
42
45
  name: rspec
43
46
  requirement: !ruby/object:Gem::Requirement
44
47
  requirements:
45
48
  - - "~>"
46
49
  - !ruby/object:Gem::Version
47
- version: '3.0'
50
+ version: '3.7'
48
51
  type: :development
49
52
  prerelease: false
50
53
  version_requirements: !ruby/object:Gem::Requirement
51
54
  requirements:
52
55
  - - "~>"
53
56
  - !ruby/object:Gem::Version
54
- version: '3.0'
57
+ version: '3.7'
55
58
  - !ruby/object:Gem::Dependency
56
59
  name: rake
57
60
  requirement: !ruby/object:Gem::Requirement
58
61
  requirements:
59
62
  - - "~>"
60
63
  - !ruby/object:Gem::Version
61
- version: '10.1'
64
+ version: '12.2'
62
65
  type: :development
63
66
  prerelease: false
64
67
  version_requirements: !ruby/object:Gem::Requirement
65
68
  requirements:
66
69
  - - "~>"
67
70
  - !ruby/object:Gem::Version
68
- version: '10.1'
71
+ version: '12.2'
69
72
  - !ruby/object:Gem::Dependency
70
73
  name: yard
71
74
  requirement: !ruby/object:Gem::Requirement
72
75
  requirements:
73
76
  - - "~>"
74
77
  - !ruby/object:Gem::Version
75
- version: '0.8'
78
+ version: '0.9'
76
79
  type: :development
77
80
  prerelease: false
78
81
  version_requirements: !ruby/object:Gem::Requirement
79
82
  requirements:
80
83
  - - "~>"
81
84
  - !ruby/object:Gem::Version
82
- version: '0.8'
85
+ version: '0.9'
83
86
  - !ruby/object:Gem::Dependency
84
87
  name: pry
85
88
  requirement: !ruby/object:Gem::Requirement
86
89
  requirements:
87
90
  - - "~>"
88
91
  - !ruby/object:Gem::Version
89
- version: '0.9'
92
+ version: '0.11'
90
93
  type: :development
91
94
  prerelease: false
92
95
  version_requirements: !ruby/object:Gem::Requirement
93
96
  requirements:
94
97
  - - "~>"
95
98
  - !ruby/object:Gem::Version
96
- version: '0.9'
99
+ version: '0.11'
97
100
  - !ruby/object:Gem::Dependency
98
101
  name: pry-doc
99
102
  requirement: !ruby/object:Gem::Requirement
100
103
  requirements:
101
104
  - - "~>"
102
105
  - !ruby/object:Gem::Version
103
- version: '0.6'
106
+ version: '0.11'
104
107
  type: :development
105
108
  prerelease: false
106
109
  version_requirements: !ruby/object:Gem::Requirement
107
110
  requirements:
108
111
  - - "~>"
109
112
  - !ruby/object:Gem::Version
110
- version: '0.6'
113
+ version: '0.11'
111
114
  - !ruby/object:Gem::Dependency
112
115
  name: benchmark-ips
113
116
  requirement: !ruby/object:Gem::Requirement
114
117
  requirements:
115
118
  - - "~>"
116
119
  - !ruby/object:Gem::Version
117
- version: '2.1'
120
+ version: '2.7'
118
121
  type: :development
119
122
  prerelease: false
120
123
  version_requirements: !ruby/object:Gem::Requirement
121
124
  requirements:
122
125
  - - "~>"
123
126
  - !ruby/object:Gem::Version
124
- version: '2.1'
127
+ version: '2.7'
125
128
  description: Efficient, immutable, thread-safe collection classes for Ruby
126
129
  email:
127
- - haruki_zaemon@mac.com
130
+ - alexinbeijing@gmail.com
128
131
  executables: []
129
132
  extensions: []
130
133
  extra_rdoc_files: []
@@ -133,6 +136,7 @@ files:
133
136
  - lib/immutable/core_ext.rb
134
137
  - lib/immutable/core_ext/enumerable.rb
135
138
  - lib/immutable/core_ext/io.rb
139
+ - lib/immutable/core_ext/struct.rb
136
140
  - lib/immutable/deque.rb
137
141
  - lib/immutable/enumerable.rb
138
142
  - lib/immutable/hash.rb
@@ -177,12 +181,14 @@ files:
177
181
  - spec/lib/immutable/hash/copying_spec.rb
178
182
  - spec/lib/immutable/hash/default_proc_spec.rb
179
183
  - spec/lib/immutable/hash/delete_spec.rb
184
+ - spec/lib/immutable/hash/dig_spec.rb
180
185
  - spec/lib/immutable/hash/each_spec.rb
181
186
  - spec/lib/immutable/hash/each_with_index_spec.rb
182
187
  - spec/lib/immutable/hash/empty_spec.rb
183
188
  - spec/lib/immutable/hash/eql_spec.rb
184
189
  - spec/lib/immutable/hash/except_spec.rb
185
190
  - spec/lib/immutable/hash/fetch_spec.rb
191
+ - spec/lib/immutable/hash/fetch_values_spec.rb
186
192
  - spec/lib/immutable/hash/find_spec.rb
187
193
  - spec/lib/immutable/hash/flat_map_spec.rb
188
194
  - spec/lib/immutable/hash/flatten_spec.rb
@@ -212,9 +218,12 @@ files:
212
218
  - spec/lib/immutable/hash/slice_spec.rb
213
219
  - spec/lib/immutable/hash/sort_spec.rb
214
220
  - spec/lib/immutable/hash/store_spec.rb
221
+ - spec/lib/immutable/hash/subset_spec.rb
222
+ - spec/lib/immutable/hash/superset_spec.rb
215
223
  - spec/lib/immutable/hash/take_spec.rb
216
224
  - spec/lib/immutable/hash/to_a_spec.rb
217
225
  - spec/lib/immutable/hash/to_hash_spec.rb
226
+ - spec/lib/immutable/hash/to_proc_spec.rb
218
227
  - spec/lib/immutable/hash/update_in_spec.rb
219
228
  - spec/lib/immutable/hash/values_at_spec.rb
220
229
  - spec/lib/immutable/hash/values_spec.rb
@@ -323,6 +332,7 @@ files:
323
332
  - spec/lib/immutable/set/first_spec.rb
324
333
  - spec/lib/immutable/set/flatten_spec.rb
325
334
  - spec/lib/immutable/set/grep_spec.rb
335
+ - spec/lib/immutable/set/grep_v_spec.rb
326
336
  - spec/lib/immutable/set/group_by_spec.rb
327
337
  - spec/lib/immutable/set/hash_spec.rb
328
338
  - spec/lib/immutable/set/include_spec.rb
@@ -412,6 +422,7 @@ files:
412
422
  - spec/lib/immutable/vector/count_spec.rb
413
423
  - spec/lib/immutable/vector/delete_at_spec.rb
414
424
  - spec/lib/immutable/vector/delete_spec.rb
425
+ - spec/lib/immutable/vector/dig_spec.rb
415
426
  - spec/lib/immutable/vector/drop_spec.rb
416
427
  - spec/lib/immutable/vector/drop_while_spec.rb
417
428
  - spec/lib/immutable/vector/each_index_spec.rb
@@ -485,7 +496,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
485
496
  requirements:
486
497
  - - ">="
487
498
  - !ruby/object:Gem::Version
488
- version: 1.9.3
499
+ version: 2.2.2
489
500
  required_rubygems_version: !ruby/object:Gem::Requirement
490
501
  requirements:
491
502
  - - ">="
@@ -493,338 +504,344 @@ required_rubygems_version: !ruby/object:Gem::Requirement
493
504
  version: '0'
494
505
  requirements: []
495
506
  rubyforge_project:
496
- rubygems_version: 2.2.2
507
+ rubygems_version: 2.6.13
497
508
  signing_key:
498
509
  specification_version: 4
499
510
  summary: Efficient, immutable, thread-safe collection classes for Ruby
500
511
  test_files:
501
- - spec/fixtures/io_spec.txt
502
512
  - spec/spec_helper.rb
503
- - spec/lib/immutable/nested/construction_spec.rb
504
- - spec/lib/immutable/hash/construction_spec.rb
505
- - spec/lib/immutable/hash/hash_spec.rb
506
- - spec/lib/immutable/hash/assoc_spec.rb
507
- - spec/lib/immutable/hash/flatten_spec.rb
508
- - spec/lib/immutable/hash/default_proc_spec.rb
509
- - spec/lib/immutable/hash/eql_spec.rb
510
- - spec/lib/immutable/hash/copying_spec.rb
511
- - spec/lib/immutable/hash/keys_spec.rb
512
- - spec/lib/immutable/hash/values_at_spec.rb
513
- - spec/lib/immutable/hash/empty_spec.rb
514
- - spec/lib/immutable/hash/any_spec.rb
515
- - spec/lib/immutable/hash/map_spec.rb
516
- - spec/lib/immutable/hash/reverse_each_spec.rb
517
- - spec/lib/immutable/hash/store_spec.rb
518
- - spec/lib/immutable/hash/update_in_spec.rb
519
- - spec/lib/immutable/hash/all_spec.rb
520
- - spec/lib/immutable/hash/min_max_spec.rb
521
- - spec/lib/immutable/hash/put_spec.rb
522
- - spec/lib/immutable/hash/each_spec.rb
523
- - spec/lib/immutable/hash/sort_spec.rb
524
- - spec/lib/immutable/hash/has_value_spec.rb
525
- - spec/lib/immutable/hash/flat_map_spec.rb
526
- - spec/lib/immutable/hash/slice_spec.rb
527
- - spec/lib/immutable/hash/to_hash_spec.rb
528
- - spec/lib/immutable/hash/to_a_spec.rb
529
- - spec/lib/immutable/hash/has_key_spec.rb
530
- - spec/lib/immutable/hash/take_spec.rb
531
- - spec/lib/immutable/hash/reduce_spec.rb
532
- - spec/lib/immutable/hash/select_spec.rb
533
- - spec/lib/immutable/hash/find_spec.rb
534
- - spec/lib/immutable/hash/sample_spec.rb
535
- - spec/lib/immutable/hash/values_spec.rb
536
- - spec/lib/immutable/hash/clear_spec.rb
537
- - spec/lib/immutable/hash/key_spec.rb
538
- - spec/lib/immutable/hash/get_spec.rb
539
- - spec/lib/immutable/hash/each_with_index_spec.rb
540
- - spec/lib/immutable/hash/none_spec.rb
541
- - spec/lib/immutable/hash/inspect_spec.rb
542
- - spec/lib/immutable/hash/size_spec.rb
543
- - spec/lib/immutable/hash/fetch_spec.rb
544
- - spec/lib/immutable/hash/reject_spec.rb
545
- - spec/lib/immutable/hash/invert_spec.rb
546
- - spec/lib/immutable/hash/except_spec.rb
547
- - spec/lib/immutable/hash/partition_spec.rb
548
- - spec/lib/immutable/hash/marshal_spec.rb
549
- - spec/lib/immutable/hash/delete_spec.rb
550
- - spec/lib/immutable/hash/pretty_print_spec.rb
551
- - spec/lib/immutable/hash/new_spec.rb
552
- - spec/lib/immutable/hash/merge_spec.rb
553
- - spec/lib/immutable/sorted_set/below_spec.rb
554
- - spec/lib/immutable/sorted_set/delete_at_spec.rb
555
- - spec/lib/immutable/sorted_set/add_spec.rb
556
- - spec/lib/immutable/sorted_set/maximum_spec.rb
557
- - spec/lib/immutable/sorted_set/from_spec.rb
558
- - spec/lib/immutable/sorted_set/eql_spec.rb
559
- - spec/lib/immutable/sorted_set/intersection_spec.rb
560
- - spec/lib/immutable/sorted_set/copying_spec.rb
561
- - spec/lib/immutable/sorted_set/union_spec.rb
562
- - spec/lib/immutable/sorted_set/values_at_spec.rb
563
- - spec/lib/immutable/sorted_set/up_to_spec.rb
564
- - spec/lib/immutable/sorted_set/to_set_spec.rb
565
- - spec/lib/immutable/sorted_set/last_spec.rb
566
- - spec/lib/immutable/sorted_set/empty_spec.rb
567
- - spec/lib/immutable/sorted_set/exclusion_spec.rb
568
- - spec/lib/immutable/sorted_set/sorting_spec.rb
569
- - spec/lib/immutable/sorted_set/intersect_spec.rb
570
- - spec/lib/immutable/sorted_set/above_spec.rb
571
- - spec/lib/immutable/sorted_set/map_spec.rb
572
- - spec/lib/immutable/sorted_set/take_while_spec.rb
573
- - spec/lib/immutable/sorted_set/reverse_each_spec.rb
574
- - spec/lib/immutable/sorted_set/each_spec.rb
575
- - spec/lib/immutable/sorted_set/between_spec.rb
576
- - spec/lib/immutable/sorted_set/drop_while_spec.rb
577
- - spec/lib/immutable/sorted_set/slice_spec.rb
578
- - spec/lib/immutable/sorted_set/take_spec.rb
579
- - spec/lib/immutable/sorted_set/select_spec.rb
580
- - spec/lib/immutable/sorted_set/include_spec.rb
581
- - spec/lib/immutable/sorted_set/drop_spec.rb
582
- - spec/lib/immutable/sorted_set/sample_spec.rb
583
- - spec/lib/immutable/sorted_set/subset_spec.rb
584
- - spec/lib/immutable/sorted_set/clear_spec.rb
585
- - spec/lib/immutable/sorted_set/inspect_spec.rb
586
- - spec/lib/immutable/sorted_set/minimum_spec.rb
587
- - spec/lib/immutable/sorted_set/size_spec.rb
588
- - spec/lib/immutable/sorted_set/fetch_spec.rb
589
- - spec/lib/immutable/sorted_set/difference_spec.rb
590
- - spec/lib/immutable/sorted_set/first_spec.rb
591
- - spec/lib/immutable/sorted_set/group_by_spec.rb
592
- - spec/lib/immutable/sorted_set/at_spec.rb
593
- - spec/lib/immutable/sorted_set/find_index_spec.rb
594
- - spec/lib/immutable/sorted_set/marshal_spec.rb
595
- - spec/lib/immutable/sorted_set/delete_spec.rb
596
- - spec/lib/immutable/sorted_set/superset_spec.rb
597
- - spec/lib/immutable/sorted_set/new_spec.rb
598
- - spec/lib/immutable/sorted_set/disjoint_spec.rb
599
- - spec/lib/immutable/core_ext/array_spec.rb
600
- - spec/lib/immutable/core_ext/enumerable_spec.rb
601
- - spec/lib/immutable/core_ext/io_spec.rb
602
- - spec/lib/immutable/vector/join_spec.rb
603
- - spec/lib/immutable/vector/fill_spec.rb
604
- - spec/lib/immutable/vector/reverse_spec.rb
513
+ - spec/fixtures/io_spec.txt
514
+ - spec/lib/load_spec.rb
515
+ - spec/lib/immutable/vector/last_spec.rb
516
+ - spec/lib/immutable/vector/each_index_spec.rb
517
+ - spec/lib/immutable/vector/drop_while_spec.rb
518
+ - spec/lib/immutable/vector/uniq_spec.rb
519
+ - spec/lib/immutable/vector/repeated_combination_spec.rb
605
520
  - spec/lib/immutable/vector/delete_at_spec.rb
606
- - spec/lib/immutable/vector/compact_spec.rb
607
- - spec/lib/immutable/vector/assoc_spec.rb
521
+ - spec/lib/immutable/vector/rindex_spec.rb
522
+ - spec/lib/immutable/vector/shuffle_spec.rb
523
+ - spec/lib/immutable/vector/reverse_each_spec.rb
608
524
  - spec/lib/immutable/vector/add_spec.rb
609
- - spec/lib/immutable/vector/flatten_spec.rb
610
- - spec/lib/immutable/vector/maximum_spec.rb
611
525
  - spec/lib/immutable/vector/concat_spec.rb
526
+ - spec/lib/immutable/vector/ltlt_spec.rb
527
+ - spec/lib/immutable/vector/take_spec.rb
612
528
  - spec/lib/immutable/vector/eql_spec.rb
613
- - spec/lib/immutable/vector/shift_spec.rb
614
- - spec/lib/immutable/vector/copying_spec.rb
615
- - spec/lib/immutable/vector/values_at_spec.rb
616
- - spec/lib/immutable/vector/length_spec.rb
617
- - spec/lib/immutable/vector/each_index_spec.rb
618
- - spec/lib/immutable/vector/sum_spec.rb
619
- - spec/lib/immutable/vector/to_set_spec.rb
620
- - spec/lib/immutable/vector/repeated_combination_spec.rb
621
- - spec/lib/immutable/vector/last_spec.rb
622
- - spec/lib/immutable/vector/insert_spec.rb
529
+ - spec/lib/immutable/vector/compare_spec.rb
530
+ - spec/lib/immutable/vector/partition_spec.rb
531
+ - spec/lib/immutable/vector/clear_spec.rb
623
532
  - spec/lib/immutable/vector/empty_spec.rb
533
+ - spec/lib/immutable/vector/each_with_index_spec.rb
534
+ - spec/lib/immutable/vector/to_list_spec.rb
535
+ - spec/lib/immutable/vector/get_spec.rb
536
+ - spec/lib/immutable/vector/combination_spec.rb
537
+ - spec/lib/immutable/vector/first_spec.rb
538
+ - spec/lib/immutable/vector/maximum_spec.rb
539
+ - spec/lib/immutable/vector/fill_spec.rb
540
+ - spec/lib/immutable/vector/permutation_spec.rb
541
+ - spec/lib/immutable/vector/flatten_spec.rb
542
+ - spec/lib/immutable/vector/drop_spec.rb
543
+ - spec/lib/immutable/vector/new_spec.rb
624
544
  - spec/lib/immutable/vector/sorting_spec.rb
625
- - spec/lib/immutable/vector/product_spec.rb
626
- - spec/lib/immutable/vector/any_spec.rb
627
- - spec/lib/immutable/vector/count_spec.rb
628
- - spec/lib/immutable/vector/map_spec.rb
545
+ - spec/lib/immutable/vector/delete_spec.rb
629
546
  - spec/lib/immutable/vector/take_while_spec.rb
630
- - spec/lib/immutable/vector/reverse_each_spec.rb
631
- - spec/lib/immutable/vector/update_in_spec.rb
632
- - spec/lib/immutable/vector/repeated_permutation_spec.rb
633
- - spec/lib/immutable/vector/rotate_spec.rb
634
- - spec/lib/immutable/vector/each_spec.rb
635
- - spec/lib/immutable/vector/drop_while_spec.rb
547
+ - spec/lib/immutable/vector/assoc_spec.rb
548
+ - spec/lib/immutable/vector/shift_spec.rb
549
+ - spec/lib/immutable/vector/to_set_spec.rb
550
+ - spec/lib/immutable/vector/reject_spec.rb
551
+ - spec/lib/immutable/vector/zip_spec.rb
636
552
  - spec/lib/immutable/vector/flat_map_spec.rb
553
+ - spec/lib/immutable/vector/map_spec.rb
554
+ - spec/lib/immutable/vector/length_spec.rb
555
+ - spec/lib/immutable/vector/inspect_spec.rb
637
556
  - spec/lib/immutable/vector/slice_spec.rb
638
- - spec/lib/immutable/vector/to_a_spec.rb
639
- - spec/lib/immutable/vector/set_spec.rb
640
- - spec/lib/immutable/vector/take_spec.rb
641
- - spec/lib/immutable/vector/multiply_spec.rb
642
- - spec/lib/immutable/vector/reduce_spec.rb
643
- - spec/lib/immutable/vector/select_spec.rb
644
- - spec/lib/immutable/vector/permutation_spec.rb
557
+ - spec/lib/immutable/vector/product_spec.rb
558
+ - spec/lib/immutable/vector/dig_spec.rb
559
+ - spec/lib/immutable/vector/minimum_spec.rb
560
+ - spec/lib/immutable/vector/update_in_spec.rb
645
561
  - spec/lib/immutable/vector/include_spec.rb
646
- - spec/lib/immutable/vector/drop_spec.rb
562
+ - spec/lib/immutable/vector/any_spec.rb
647
563
  - spec/lib/immutable/vector/unshift_spec.rb
648
- - spec/lib/immutable/vector/to_list_spec.rb
649
- - spec/lib/immutable/vector/sample_spec.rb
564
+ - spec/lib/immutable/vector/repeated_permutation_spec.rb
565
+ - spec/lib/immutable/vector/reverse_spec.rb
566
+ - spec/lib/immutable/vector/insert_spec.rb
567
+ - spec/lib/immutable/vector/set_spec.rb
568
+ - spec/lib/immutable/vector/select_spec.rb
650
569
  - spec/lib/immutable/vector/transpose_spec.rb
651
- - spec/lib/immutable/vector/pop_spec.rb
652
- - spec/lib/immutable/vector/rindex_spec.rb
653
- - spec/lib/immutable/vector/clear_spec.rb
570
+ - spec/lib/immutable/vector/compact_spec.rb
654
571
  - spec/lib/immutable/vector/to_ary_spec.rb
655
- - spec/lib/immutable/vector/get_spec.rb
656
- - spec/lib/immutable/vector/each_with_index_spec.rb
657
- - spec/lib/immutable/vector/inspect_spec.rb
658
- - spec/lib/immutable/vector/minimum_spec.rb
659
- - spec/lib/immutable/vector/fetch_spec.rb
660
- - spec/lib/immutable/vector/reject_spec.rb
661
- - spec/lib/immutable/vector/first_spec.rb
662
- - spec/lib/immutable/vector/zip_spec.rb
663
- - spec/lib/immutable/vector/bsearch_spec.rb
572
+ - spec/lib/immutable/vector/copying_spec.rb
573
+ - spec/lib/immutable/vector/multiply_spec.rb
574
+ - spec/lib/immutable/vector/pop_spec.rb
575
+ - spec/lib/immutable/vector/to_a_spec.rb
576
+ - spec/lib/immutable/vector/count_spec.rb
577
+ - spec/lib/immutable/vector/sum_spec.rb
578
+ - spec/lib/immutable/vector/each_spec.rb
664
579
  - spec/lib/immutable/vector/group_by_spec.rb
665
- - spec/lib/immutable/vector/compare_spec.rb
666
- - spec/lib/immutable/vector/uniq_spec.rb
667
- - spec/lib/immutable/vector/partition_spec.rb
580
+ - spec/lib/immutable/vector/bsearch_spec.rb
581
+ - spec/lib/immutable/vector/sample_spec.rb
582
+ - spec/lib/immutable/vector/rotate_spec.rb
583
+ - spec/lib/immutable/vector/values_at_spec.rb
584
+ - spec/lib/immutable/vector/join_spec.rb
668
585
  - spec/lib/immutable/vector/marshal_spec.rb
669
- - spec/lib/immutable/vector/delete_spec.rb
670
- - spec/lib/immutable/vector/shuffle_spec.rb
671
- - spec/lib/immutable/vector/ltlt_spec.rb
672
- - spec/lib/immutable/vector/combination_spec.rb
673
- - spec/lib/immutable/vector/new_spec.rb
674
- - spec/lib/immutable/deque/construction_spec.rb
675
- - spec/lib/immutable/deque/shift_spec.rb
676
- - spec/lib/immutable/deque/copying_spec.rb
677
- - spec/lib/immutable/deque/dequeue_spec.rb
678
- - spec/lib/immutable/deque/last_spec.rb
679
- - spec/lib/immutable/deque/empty_spec.rb
680
- - spec/lib/immutable/deque/random_modification_spec.rb
586
+ - spec/lib/immutable/vector/reduce_spec.rb
587
+ - spec/lib/immutable/vector/fetch_spec.rb
681
588
  - spec/lib/immutable/deque/enqueue_spec.rb
682
- - spec/lib/immutable/deque/to_a_spec.rb
683
- - spec/lib/immutable/deque/unshift_spec.rb
684
- - spec/lib/immutable/deque/to_list_spec.rb
685
- - spec/lib/immutable/deque/pop_spec.rb
589
+ - spec/lib/immutable/deque/last_spec.rb
590
+ - spec/lib/immutable/deque/dequeue_spec.rb
686
591
  - spec/lib/immutable/deque/push_spec.rb
592
+ - spec/lib/immutable/deque/pretty_print_spec.rb
687
593
  - spec/lib/immutable/deque/clear_spec.rb
688
- - spec/lib/immutable/deque/to_ary_spec.rb
689
- - spec/lib/immutable/deque/inspect_spec.rb
594
+ - spec/lib/immutable/deque/empty_spec.rb
690
595
  - spec/lib/immutable/deque/size_spec.rb
596
+ - spec/lib/immutable/deque/to_list_spec.rb
597
+ - spec/lib/immutable/deque/random_modification_spec.rb
691
598
  - spec/lib/immutable/deque/first_spec.rb
692
- - spec/lib/immutable/deque/marshal_spec.rb
693
- - spec/lib/immutable/deque/pretty_print_spec.rb
694
599
  - spec/lib/immutable/deque/new_spec.rb
695
- - spec/lib/immutable/set/construction_spec.rb
696
- - spec/lib/immutable/set/hash_spec.rb
697
- - spec/lib/immutable/set/join_spec.rb
698
- - spec/lib/immutable/set/compact_spec.rb
699
- - spec/lib/immutable/set/add_spec.rb
700
- - spec/lib/immutable/set/flatten_spec.rb
701
- - spec/lib/immutable/set/maximum_spec.rb
702
- - spec/lib/immutable/set/eql_spec.rb
703
- - spec/lib/immutable/set/intersection_spec.rb
704
- - spec/lib/immutable/set/copying_spec.rb
705
- - spec/lib/immutable/set/union_spec.rb
706
- - spec/lib/immutable/set/sum_spec.rb
707
- - spec/lib/immutable/set/to_set_spec.rb
708
- - spec/lib/immutable/set/empty_spec.rb
709
- - spec/lib/immutable/set/exclusion_spec.rb
710
- - spec/lib/immutable/set/sorting_spec.rb
711
- - spec/lib/immutable/set/product_spec.rb
712
- - spec/lib/immutable/set/any_spec.rb
713
- - spec/lib/immutable/set/intersect_spec.rb
714
- - spec/lib/immutable/set/count_spec.rb
715
- - spec/lib/immutable/set/map_spec.rb
716
- - spec/lib/immutable/set/reverse_each_spec.rb
717
- - spec/lib/immutable/set/all_spec.rb
718
- - spec/lib/immutable/set/each_spec.rb
719
- - spec/lib/immutable/set/one_spec.rb
720
- - spec/lib/immutable/set/to_a_spec.rb
721
- - spec/lib/immutable/set/reduce_spec.rb
722
- - spec/lib/immutable/set/select_spec.rb
723
- - spec/lib/immutable/set/find_spec.rb
724
- - spec/lib/immutable/set/include_spec.rb
725
- - spec/lib/immutable/set/to_list_spec.rb
726
- - spec/lib/immutable/set/eqeq_spec.rb
727
- - spec/lib/immutable/set/sample_spec.rb
600
+ - spec/lib/immutable/deque/shift_spec.rb
601
+ - spec/lib/immutable/deque/construction_spec.rb
602
+ - spec/lib/immutable/deque/inspect_spec.rb
603
+ - spec/lib/immutable/deque/unshift_spec.rb
604
+ - spec/lib/immutable/deque/to_ary_spec.rb
605
+ - spec/lib/immutable/deque/copying_spec.rb
606
+ - spec/lib/immutable/deque/pop_spec.rb
607
+ - spec/lib/immutable/deque/to_a_spec.rb
608
+ - spec/lib/immutable/deque/marshal_spec.rb
609
+ - spec/lib/immutable/set/difference_spec.rb
610
+ - spec/lib/immutable/set/disjoint_spec.rb
728
611
  - spec/lib/immutable/set/subset_spec.rb
729
- - spec/lib/immutable/set/clear_spec.rb
612
+ - spec/lib/immutable/set/grep_v_spec.rb
613
+ - spec/lib/immutable/set/union_spec.rb
614
+ - spec/lib/immutable/set/superset_spec.rb
615
+ - spec/lib/immutable/set/eqeq_spec.rb
730
616
  - spec/lib/immutable/set/grep_spec.rb
731
617
  - spec/lib/immutable/set/none_spec.rb
732
- - spec/lib/immutable/set/inspect_spec.rb
733
- - spec/lib/immutable/set/minimum_spec.rb
618
+ - spec/lib/immutable/set/reverse_each_spec.rb
619
+ - spec/lib/immutable/set/add_spec.rb
620
+ - spec/lib/immutable/set/eql_spec.rb
621
+ - spec/lib/immutable/set/one_spec.rb
622
+ - spec/lib/immutable/set/partition_spec.rb
623
+ - spec/lib/immutable/set/clear_spec.rb
624
+ - spec/lib/immutable/set/empty_spec.rb
734
625
  - spec/lib/immutable/set/size_spec.rb
735
- - spec/lib/immutable/set/difference_spec.rb
736
- - spec/lib/immutable/set/reject_spec.rb
626
+ - spec/lib/immutable/set/to_list_spec.rb
737
627
  - spec/lib/immutable/set/first_spec.rb
628
+ - spec/lib/immutable/set/maximum_spec.rb
629
+ - spec/lib/immutable/set/flatten_spec.rb
630
+ - spec/lib/immutable/set/new_spec.rb
631
+ - spec/lib/immutable/set/sorting_spec.rb
632
+ - spec/lib/immutable/set/delete_spec.rb
633
+ - spec/lib/immutable/set/hash_spec.rb
634
+ - spec/lib/immutable/set/to_set_spec.rb
635
+ - spec/lib/immutable/set/reject_spec.rb
636
+ - spec/lib/immutable/set/construction_spec.rb
637
+ - spec/lib/immutable/set/intersection_spec.rb
638
+ - spec/lib/immutable/set/map_spec.rb
639
+ - spec/lib/immutable/set/inspect_spec.rb
640
+ - spec/lib/immutable/set/product_spec.rb
641
+ - spec/lib/immutable/set/minimum_spec.rb
642
+ - spec/lib/immutable/set/find_spec.rb
643
+ - spec/lib/immutable/set/include_spec.rb
644
+ - spec/lib/immutable/set/any_spec.rb
645
+ - spec/lib/immutable/set/select_spec.rb
646
+ - spec/lib/immutable/set/exclusion_spec.rb
647
+ - spec/lib/immutable/set/compact_spec.rb
648
+ - spec/lib/immutable/set/copying_spec.rb
649
+ - spec/lib/immutable/set/to_a_spec.rb
650
+ - spec/lib/immutable/set/count_spec.rb
651
+ - spec/lib/immutable/set/sum_spec.rb
652
+ - spec/lib/immutable/set/each_spec.rb
738
653
  - spec/lib/immutable/set/group_by_spec.rb
739
- - spec/lib/immutable/set/partition_spec.rb
654
+ - spec/lib/immutable/set/sample_spec.rb
655
+ - spec/lib/immutable/set/join_spec.rb
740
656
  - spec/lib/immutable/set/marshal_spec.rb
741
- - spec/lib/immutable/set/delete_spec.rb
742
- - spec/lib/immutable/set/superset_spec.rb
743
- - spec/lib/immutable/set/new_spec.rb
744
- - spec/lib/immutable/set/disjoint_spec.rb
745
- - spec/lib/immutable/list/construction_spec.rb
746
- - spec/lib/immutable/list/index_spec.rb
747
- - spec/lib/immutable/list/hash_spec.rb
748
- - spec/lib/immutable/list/join_spec.rb
749
- - spec/lib/immutable/list/fill_spec.rb
750
- - spec/lib/immutable/list/reverse_spec.rb
657
+ - spec/lib/immutable/set/all_spec.rb
658
+ - spec/lib/immutable/set/intersect_spec.rb
659
+ - spec/lib/immutable/set/reduce_spec.rb
660
+ - spec/lib/immutable/core_ext/array_spec.rb
661
+ - spec/lib/immutable/core_ext/io_spec.rb
662
+ - spec/lib/immutable/core_ext/enumerable_spec.rb
663
+ - spec/lib/immutable/nested/construction_spec.rb
664
+ - spec/lib/immutable/list/last_spec.rb
665
+ - spec/lib/immutable/list/cadr_spec.rb
666
+ - spec/lib/immutable/list/drop_while_spec.rb
667
+ - spec/lib/immutable/list/break_spec.rb
668
+ - spec/lib/immutable/list/union_spec.rb
669
+ - spec/lib/immutable/list/uniq_spec.rb
751
670
  - spec/lib/immutable/list/delete_at_spec.rb
752
- - spec/lib/immutable/list/compact_spec.rb
671
+ - spec/lib/immutable/list/grep_spec.rb
672
+ - spec/lib/immutable/list/none_spec.rb
673
+ - spec/lib/immutable/list/tail_spec.rb
753
674
  - spec/lib/immutable/list/add_spec.rb
754
- - spec/lib/immutable/list/flatten_spec.rb
755
- - spec/lib/immutable/list/maximum_spec.rb
756
- - spec/lib/immutable/list/merge_by_spec.rb
757
- - spec/lib/immutable/list/find_all_spec.rb
675
+ - spec/lib/immutable/list/ltlt_spec.rb
676
+ - spec/lib/immutable/list/split_at_spec.rb
677
+ - spec/lib/immutable/list/take_spec.rb
758
678
  - spec/lib/immutable/list/eql_spec.rb
759
- - spec/lib/immutable/list/copying_spec.rb
760
- - spec/lib/immutable/list/union_spec.rb
761
- - spec/lib/immutable/list/sum_spec.rb
762
- - spec/lib/immutable/list/inits_spec.rb
763
- - spec/lib/immutable/list/to_set_spec.rb
764
- - spec/lib/immutable/list/last_spec.rb
765
- - spec/lib/immutable/list/insert_spec.rb
679
+ - spec/lib/immutable/list/index_spec.rb
680
+ - spec/lib/immutable/list/one_spec.rb
681
+ - spec/lib/immutable/list/intersperse_spec.rb
682
+ - spec/lib/immutable/list/append_spec.rb
683
+ - spec/lib/immutable/list/compare_spec.rb
684
+ - spec/lib/immutable/list/partition_spec.rb
685
+ - spec/lib/immutable/list/clear_spec.rb
686
+ - spec/lib/immutable/list/span_spec.rb
766
687
  - spec/lib/immutable/list/empty_spec.rb
688
+ - spec/lib/immutable/list/size_spec.rb
689
+ - spec/lib/immutable/list/each_with_index_spec.rb
690
+ - spec/lib/immutable/list/to_list_spec.rb
691
+ - spec/lib/immutable/list/combination_spec.rb
692
+ - spec/lib/immutable/list/head_spec.rb
693
+ - spec/lib/immutable/list/maximum_spec.rb
694
+ - spec/lib/immutable/list/fill_spec.rb
695
+ - spec/lib/immutable/list/permutation_spec.rb
696
+ - spec/lib/immutable/list/flatten_spec.rb
697
+ - spec/lib/immutable/list/drop_spec.rb
767
698
  - spec/lib/immutable/list/sorting_spec.rb
768
- - spec/lib/immutable/list/cadr_spec.rb
769
- - spec/lib/immutable/list/product_spec.rb
770
- - spec/lib/immutable/list/any_spec.rb
771
- - spec/lib/immutable/list/count_spec.rb
772
- - spec/lib/immutable/list/split_at_spec.rb
773
- - spec/lib/immutable/list/map_spec.rb
699
+ - spec/lib/immutable/list/delete_spec.rb
774
700
  - spec/lib/immutable/list/take_while_spec.rb
775
- - spec/lib/immutable/list/indices_spec.rb
776
- - spec/lib/immutable/list/break_spec.rb
777
- - spec/lib/immutable/list/intersperse_spec.rb
701
+ - spec/lib/immutable/list/hash_spec.rb
778
702
  - spec/lib/immutable/list/multithreading_spec.rb
779
- - spec/lib/immutable/list/all_spec.rb
780
- - spec/lib/immutable/list/rotate_spec.rb
781
- - spec/lib/immutable/list/each_spec.rb
782
- - spec/lib/immutable/list/one_spec.rb
783
- - spec/lib/immutable/list/subsequences_spec.rb
784
- - spec/lib/immutable/list/append_spec.rb
703
+ - spec/lib/immutable/list/tails_spec.rb
704
+ - spec/lib/immutable/list/inits_spec.rb
785
705
  - spec/lib/immutable/list/each_slice_spec.rb
786
- - spec/lib/immutable/list/drop_while_spec.rb
706
+ - spec/lib/immutable/list/at_spec.rb
707
+ - spec/lib/immutable/list/init_spec.rb
708
+ - spec/lib/immutable/list/to_set_spec.rb
709
+ - spec/lib/immutable/list/reject_spec.rb
710
+ - spec/lib/immutable/list/zip_spec.rb
711
+ - spec/lib/immutable/list/construction_spec.rb
787
712
  - spec/lib/immutable/list/flat_map_spec.rb
788
- - spec/lib/immutable/list/chunk_spec.rb
713
+ - spec/lib/immutable/list/map_spec.rb
714
+ - spec/lib/immutable/list/find_index_spec.rb
715
+ - spec/lib/immutable/list/cycle_spec.rb
716
+ - spec/lib/immutable/list/subsequences_spec.rb
717
+ - spec/lib/immutable/list/inspect_spec.rb
789
718
  - spec/lib/immutable/list/slice_spec.rb
790
- - spec/lib/immutable/list/to_a_spec.rb
791
- - spec/lib/immutable/list/init_spec.rb
792
- - spec/lib/immutable/list/take_spec.rb
793
- - spec/lib/immutable/list/reduce_spec.rb
794
- - spec/lib/immutable/list/select_spec.rb
795
- - spec/lib/immutable/list/permutation_spec.rb
719
+ - spec/lib/immutable/list/cons_spec.rb
720
+ - spec/lib/immutable/list/product_spec.rb
721
+ - spec/lib/immutable/list/minimum_spec.rb
796
722
  - spec/lib/immutable/list/find_spec.rb
797
723
  - spec/lib/immutable/list/include_spec.rb
798
- - spec/lib/immutable/list/drop_spec.rb
799
- - spec/lib/immutable/list/to_list_spec.rb
800
- - spec/lib/immutable/list/sample_spec.rb
724
+ - spec/lib/immutable/list/any_spec.rb
725
+ - spec/lib/immutable/list/reverse_spec.rb
726
+ - spec/lib/immutable/list/insert_spec.rb
727
+ - spec/lib/immutable/list/select_spec.rb
728
+ - spec/lib/immutable/list/indices_spec.rb
801
729
  - spec/lib/immutable/list/transpose_spec.rb
802
- - spec/lib/immutable/list/pop_spec.rb
803
- - spec/lib/immutable/list/head_spec.rb
804
- - spec/lib/immutable/list/clear_spec.rb
730
+ - spec/lib/immutable/list/chunk_spec.rb
731
+ - spec/lib/immutable/list/compact_spec.rb
805
732
  - spec/lib/immutable/list/to_ary_spec.rb
806
- - spec/lib/immutable/list/each_with_index_spec.rb
807
- - spec/lib/immutable/list/grep_spec.rb
808
- - spec/lib/immutable/list/none_spec.rb
809
- - spec/lib/immutable/list/cycle_spec.rb
810
- - spec/lib/immutable/list/cons_spec.rb
811
- - spec/lib/immutable/list/inspect_spec.rb
812
- - spec/lib/immutable/list/minimum_spec.rb
813
- - spec/lib/immutable/list/size_spec.rb
814
- - spec/lib/immutable/list/reject_spec.rb
815
- - spec/lib/immutable/list/zip_spec.rb
733
+ - spec/lib/immutable/list/copying_spec.rb
734
+ - spec/lib/immutable/list/pop_spec.rb
735
+ - spec/lib/immutable/list/to_a_spec.rb
736
+ - spec/lib/immutable/list/count_spec.rb
737
+ - spec/lib/immutable/list/sum_spec.rb
738
+ - spec/lib/immutable/list/each_spec.rb
739
+ - spec/lib/immutable/list/find_all_spec.rb
816
740
  - spec/lib/immutable/list/group_by_spec.rb
817
- - spec/lib/immutable/list/compare_spec.rb
818
- - spec/lib/immutable/list/at_spec.rb
819
- - spec/lib/immutable/list/tails_spec.rb
820
- - spec/lib/immutable/list/find_index_spec.rb
821
- - spec/lib/immutable/list/uniq_spec.rb
822
- - spec/lib/immutable/list/tail_spec.rb
823
- - spec/lib/immutable/list/partition_spec.rb
824
- - spec/lib/immutable/list/delete_spec.rb
825
- - spec/lib/immutable/list/ltlt_spec.rb
826
- - spec/lib/immutable/list/combination_spec.rb
827
741
  - spec/lib/immutable/list/merge_spec.rb
828
- - spec/lib/immutable/list/span_spec.rb
829
- - spec/lib/load_spec.rb
830
- has_rdoc:
742
+ - spec/lib/immutable/list/sample_spec.rb
743
+ - spec/lib/immutable/list/merge_by_spec.rb
744
+ - spec/lib/immutable/list/rotate_spec.rb
745
+ - spec/lib/immutable/list/join_spec.rb
746
+ - spec/lib/immutable/list/all_spec.rb
747
+ - spec/lib/immutable/list/reduce_spec.rb
748
+ - spec/lib/immutable/sorted_set/last_spec.rb
749
+ - spec/lib/immutable/sorted_set/difference_spec.rb
750
+ - spec/lib/immutable/sorted_set/disjoint_spec.rb
751
+ - spec/lib/immutable/sorted_set/subset_spec.rb
752
+ - spec/lib/immutable/sorted_set/drop_while_spec.rb
753
+ - spec/lib/immutable/sorted_set/union_spec.rb
754
+ - spec/lib/immutable/sorted_set/delete_at_spec.rb
755
+ - spec/lib/immutable/sorted_set/superset_spec.rb
756
+ - spec/lib/immutable/sorted_set/reverse_each_spec.rb
757
+ - spec/lib/immutable/sorted_set/add_spec.rb
758
+ - spec/lib/immutable/sorted_set/take_spec.rb
759
+ - spec/lib/immutable/sorted_set/eql_spec.rb
760
+ - spec/lib/immutable/sorted_set/clear_spec.rb
761
+ - spec/lib/immutable/sorted_set/empty_spec.rb
762
+ - spec/lib/immutable/sorted_set/size_spec.rb
763
+ - spec/lib/immutable/sorted_set/first_spec.rb
764
+ - spec/lib/immutable/sorted_set/below_spec.rb
765
+ - spec/lib/immutable/sorted_set/maximum_spec.rb
766
+ - spec/lib/immutable/sorted_set/drop_spec.rb
767
+ - spec/lib/immutable/sorted_set/new_spec.rb
768
+ - spec/lib/immutable/sorted_set/sorting_spec.rb
769
+ - spec/lib/immutable/sorted_set/from_spec.rb
770
+ - spec/lib/immutable/sorted_set/delete_spec.rb
771
+ - spec/lib/immutable/sorted_set/take_while_spec.rb
772
+ - spec/lib/immutable/sorted_set/at_spec.rb
773
+ - spec/lib/immutable/sorted_set/to_set_spec.rb
774
+ - spec/lib/immutable/sorted_set/intersection_spec.rb
775
+ - spec/lib/immutable/sorted_set/up_to_spec.rb
776
+ - spec/lib/immutable/sorted_set/map_spec.rb
777
+ - spec/lib/immutable/sorted_set/find_index_spec.rb
778
+ - spec/lib/immutable/sorted_set/inspect_spec.rb
779
+ - spec/lib/immutable/sorted_set/slice_spec.rb
780
+ - spec/lib/immutable/sorted_set/minimum_spec.rb
781
+ - spec/lib/immutable/sorted_set/include_spec.rb
782
+ - spec/lib/immutable/sorted_set/select_spec.rb
783
+ - spec/lib/immutable/sorted_set/above_spec.rb
784
+ - spec/lib/immutable/sorted_set/exclusion_spec.rb
785
+ - spec/lib/immutable/sorted_set/copying_spec.rb
786
+ - spec/lib/immutable/sorted_set/each_spec.rb
787
+ - spec/lib/immutable/sorted_set/group_by_spec.rb
788
+ - spec/lib/immutable/sorted_set/between_spec.rb
789
+ - spec/lib/immutable/sorted_set/sample_spec.rb
790
+ - spec/lib/immutable/sorted_set/values_at_spec.rb
791
+ - spec/lib/immutable/sorted_set/marshal_spec.rb
792
+ - spec/lib/immutable/sorted_set/intersect_spec.rb
793
+ - spec/lib/immutable/sorted_set/fetch_spec.rb
794
+ - spec/lib/immutable/hash/subset_spec.rb
795
+ - spec/lib/immutable/hash/to_proc_spec.rb
796
+ - spec/lib/immutable/hash/superset_spec.rb
797
+ - spec/lib/immutable/hash/none_spec.rb
798
+ - spec/lib/immutable/hash/reverse_each_spec.rb
799
+ - spec/lib/immutable/hash/to_hash_spec.rb
800
+ - spec/lib/immutable/hash/values_spec.rb
801
+ - spec/lib/immutable/hash/take_spec.rb
802
+ - spec/lib/immutable/hash/eql_spec.rb
803
+ - spec/lib/immutable/hash/pretty_print_spec.rb
804
+ - spec/lib/immutable/hash/partition_spec.rb
805
+ - spec/lib/immutable/hash/clear_spec.rb
806
+ - spec/lib/immutable/hash/empty_spec.rb
807
+ - spec/lib/immutable/hash/size_spec.rb
808
+ - spec/lib/immutable/hash/each_with_index_spec.rb
809
+ - spec/lib/immutable/hash/fetch_values_spec.rb
810
+ - spec/lib/immutable/hash/keys_spec.rb
811
+ - spec/lib/immutable/hash/default_proc_spec.rb
812
+ - spec/lib/immutable/hash/get_spec.rb
813
+ - spec/lib/immutable/hash/flatten_spec.rb
814
+ - spec/lib/immutable/hash/key_spec.rb
815
+ - spec/lib/immutable/hash/new_spec.rb
816
+ - spec/lib/immutable/hash/delete_spec.rb
817
+ - spec/lib/immutable/hash/hash_spec.rb
818
+ - spec/lib/immutable/hash/assoc_spec.rb
819
+ - spec/lib/immutable/hash/invert_spec.rb
820
+ - spec/lib/immutable/hash/reject_spec.rb
821
+ - spec/lib/immutable/hash/has_key_spec.rb
822
+ - spec/lib/immutable/hash/construction_spec.rb
823
+ - spec/lib/immutable/hash/flat_map_spec.rb
824
+ - spec/lib/immutable/hash/map_spec.rb
825
+ - spec/lib/immutable/hash/put_spec.rb
826
+ - spec/lib/immutable/hash/inspect_spec.rb
827
+ - spec/lib/immutable/hash/slice_spec.rb
828
+ - spec/lib/immutable/hash/dig_spec.rb
829
+ - spec/lib/immutable/hash/update_in_spec.rb
830
+ - spec/lib/immutable/hash/find_spec.rb
831
+ - spec/lib/immutable/hash/any_spec.rb
832
+ - spec/lib/immutable/hash/except_spec.rb
833
+ - spec/lib/immutable/hash/has_value_spec.rb
834
+ - spec/lib/immutable/hash/select_spec.rb
835
+ - spec/lib/immutable/hash/store_spec.rb
836
+ - spec/lib/immutable/hash/copying_spec.rb
837
+ - spec/lib/immutable/hash/to_a_spec.rb
838
+ - spec/lib/immutable/hash/each_spec.rb
839
+ - spec/lib/immutable/hash/merge_spec.rb
840
+ - spec/lib/immutable/hash/sample_spec.rb
841
+ - spec/lib/immutable/hash/values_at_spec.rb
842
+ - spec/lib/immutable/hash/min_max_spec.rb
843
+ - spec/lib/immutable/hash/marshal_spec.rb
844
+ - spec/lib/immutable/hash/all_spec.rb
845
+ - spec/lib/immutable/hash/reduce_spec.rb
846
+ - spec/lib/immutable/hash/sort_spec.rb
847
+ - spec/lib/immutable/hash/fetch_spec.rb