evt-collection 2.4.0.0 → 2.4.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 922a2fa4912c4f8a3778994ed975dfc184bb728343159529dc299c3352888f13
4
- data.tar.gz: d3c07b56ef57547eaf553ff34e28735b73a2188a6d69ccae64994ee8a5c42cb2
3
+ metadata.gz: 6b9873a9d37bf4b855172f564e19e47a9605e944a0b843f304183d3b8426dbf2
4
+ data.tar.gz: e0aec9f5c363c823fb726140a4bdc6398c47887967b3602e0665993606f84ee6
5
5
  SHA512:
6
- metadata.gz: 7a40a6bca7e341f5d29bee4210fe5be181d8c5dac9bdc64e2e3b14936fce0ff86684cfc802e4c7eb5d701b261214085b9daab9f40934140fcf8ee11882a17944
7
- data.tar.gz: 3c37fcc99ed713c70f7d14051acaebe4c4fa9da7ed63d49554097a0c5e0a5b577b225d32df7dd2ea5eca2c906dbafe60200c4c48b356b5dc4fe6d6d1f8db6a08
6
+ metadata.gz: 3b524d393b8d526b4d38f60c1a2d11d48b9e136123289251eac790235c4d0b1eff2b1b17b5425618e544c89e53efa1d9212d237235a8de7b1479b007ef7270d3
7
+ data.tar.gz: ed544b2dcefb07112a0879937ae1e399319a0b092ba1e0d7849506de00c3bcc4657bc6aca9c0d7a329b63ba6eee4e03de52f5078340c9cfee0e62f05d8480329
data/lib/collection.rb CHANGED
@@ -2,4 +2,5 @@ require 'set'
2
2
 
3
3
  require 'collection/generic'
4
4
  require 'collection/collection'
5
+ require 'collection/array'
5
6
  require 'collection/set'
@@ -0,0 +1,9 @@
1
+ module Collection
2
+ class Array
3
+ include Collection
4
+
5
+ def content
6
+ @content ||= ::Array.new
7
+ end
8
+ end
9
+ end
@@ -15,7 +15,7 @@ module Collection
15
15
  raise ArgumentError, "#{val.inspect} must be a #{type_parameter.name}"
16
16
  end
17
17
 
18
- content.add(val)
18
+ content << val
19
19
 
20
20
  self
21
21
  end
@@ -40,7 +40,7 @@ module Collection
40
40
  alias :eql? :==
41
41
 
42
42
  def self.Set(items)
43
- items = Array(items)
43
+ items = Kernel::Array(items)
44
44
 
45
45
  raise ArgumentError, "Collection can't be empty" if items.empty?
46
46
 
@@ -49,9 +49,25 @@ module Collection
49
49
  set = Set[type_parameter].new
50
50
 
51
51
  items.each do |member|
52
- set.add member
52
+ set.add(member)
53
53
  end
54
54
 
55
55
  set
56
56
  end
57
+
58
+ def self.Array(items)
59
+ items = Kernel::Array(items)
60
+
61
+ raise ArgumentError, "Collection can't be empty" if items.empty?
62
+
63
+ type_parameter = items[0].class
64
+
65
+ array = Array[type_parameter].new
66
+
67
+ items.each do |member|
68
+ array.add(member)
69
+ end
70
+
71
+ array
72
+ end
57
73
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evt-collection
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.0.0
4
+ version: 2.4.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Eventide Project
@@ -31,6 +31,7 @@ extensions: []
31
31
  extra_rdoc_files: []
32
32
  files:
33
33
  - lib/collection.rb
34
+ - lib/collection/array.rb
34
35
  - lib/collection/collection.rb
35
36
  - lib/collection/controls.rb
36
37
  - lib/collection/controls/array.rb