darkholme 1.0.0 → 1.0.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e7887db34f894712a0b13a7b0efc0371af0983a4
4
- data.tar.gz: 44a523114c61788c2c11d450df41e90179f3867d
3
+ metadata.gz: 3c751fbf69610015dd67ae875b1a9789807097c7
4
+ data.tar.gz: 91a81a41c8a3006bb1750f1526982e20fb4e9c7b
5
5
  SHA512:
6
- metadata.gz: ecdfaa52cc78ef4e681a84b4dc8a734a9a61c239171e75931fa7a5b756fa1a30626de6dc7274c94faba5215ad6836952ab2f9e87d05685ac01858b283b12ac3d
7
- data.tar.gz: 4e83e7a54bdf7eeec2c35cc8d4c28d35087a26c6124899b509351c8db1bdb404f62a93954c11ea6537ec151b1fe977b16b163d8289525ab34fc45b7cc023b68e
6
+ metadata.gz: 124c8caebe4951c8ad489f424cccbef53e18008fe6679262488826d7e1a880dbef78605e03e07bdad2972b66c0749fc9bb3df2035d37bdbb534dea2eca88f9ef
7
+ data.tar.gz: 5b979b35e389d4314e0ea6539b8f132dc8ab8083efcbf4965c956169c5a595f8cf1d086a4f50bbd51a392cb1196e1cb57e4deed85fb91eea1b8eeb7c29c33675
data/README.md CHANGED
@@ -7,6 +7,16 @@
7
7
  Darkholme is an [entity-component system](http://en.wikipedia.org/wiki/Entity_component_system)
8
8
  written in Ruby. It's still early days for it, but I think it's ready for most basic use cases.
9
9
 
10
+ ## Installation
11
+
12
+ Just add this line to your project's Gemfile
13
+
14
+ ```
15
+ gem "darkholme"
16
+ ```
17
+
18
+ Then, just `require "darkholme"` in your project and you're on your way!
19
+
10
20
  ## Usage
11
21
 
12
22
  First, you need to create an **Engine** to hold all the other parts of Darkholme.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0
1
+ 1.0.1
data/darkholme.gemspec CHANGED
@@ -2,15 +2,15 @@
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: darkholme 1.0.0 ruby lib
5
+ # stub: darkholme 1.0.1 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "darkholme"
9
- s.version = "1.0.0"
9
+ s.version = "1.0.1"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
12
  s.authors = ["Massive Danger"]
13
- s.date = "2014-02-25"
13
+ s.date = "2014-02-26"
14
14
  s.description = "An entity-component system in Ruby"
15
15
  s.email = "evan@massivedanger.com"
16
16
  s.extra_rdoc_files = [
@@ -22,7 +22,6 @@ Gem::Specification.new do |s|
22
22
  ".rspec",
23
23
  ".travis.yml",
24
24
  "Gemfile",
25
- "Gemfile.lock",
26
25
  "Guardfile",
27
26
  "LICENSE.txt",
28
27
  "README.md",
@@ -63,7 +63,7 @@ module Darkholme
63
63
  #
64
64
  # @return [Boolean] Whether or not all bits are flipped in both
65
65
  def include?(other)
66
- set_indexes & other.set_indexes == other.set_indexes
66
+ set_indexes.sort & other.set_indexes.sort == other.set_indexes.sort
67
67
  end
68
68
 
69
69
  # Perform a bitwise AND
@@ -29,12 +29,12 @@ module Darkholme
29
29
  it "can clear bits" do
30
30
  subject.set(bit)
31
31
  expect(subject.set?(bit)).to eq(true)
32
-
32
+
33
33
  expect {
34
34
  subject.clear(bit)
35
35
  }.to change { subject.bits }
36
36
 
37
- expect(subject.set?(bit)).to eq(false)
37
+ expect(subject.set?(bit)).to eq(false)
38
38
  end
39
39
 
40
40
  it "removes the set index during a clear" do
@@ -75,5 +75,17 @@ module Darkholme
75
75
 
76
76
  expect(subject.include? other).to eq(true)
77
77
  end
78
+
79
+ it "can check for inclusion even if the orders are different" do
80
+ subject.set(10)
81
+ subject.set(7)
82
+ subject.set(4)
83
+
84
+ other = Bitset.new
85
+ other.set(4)
86
+ other.set(10)
87
+
88
+ expect(subject.include? other).to eq(true)
89
+ end
78
90
  end
79
91
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: darkholme
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Massive Danger
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-25 00:00:00.000000000 Z
11
+ date: 2014-02-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pry
@@ -148,7 +148,6 @@ files:
148
148
  - .rspec
149
149
  - .travis.yml
150
150
  - Gemfile
151
- - Gemfile.lock
152
151
  - Guardfile
153
152
  - LICENSE.txt
154
153
  - README.md
data/Gemfile.lock DELETED
@@ -1,117 +0,0 @@
1
- GEM
2
- remote: http://rubygems.org/
3
- specs:
4
- addressable (2.3.5)
5
- builder (3.2.2)
6
- celluloid (0.15.2)
7
- timers (~> 1.1.0)
8
- coderay (1.1.0)
9
- descendants_tracker (0.0.3)
10
- diff-lcs (1.2.5)
11
- docile (1.1.3)
12
- faraday (0.9.0)
13
- multipart-post (>= 1.2, < 3)
14
- ffi (1.9.3)
15
- formatador (0.2.4)
16
- git (1.2.6)
17
- github_api (0.11.2)
18
- addressable (~> 2.3)
19
- descendants_tracker (~> 0.0.1)
20
- faraday (~> 0.8, < 0.10)
21
- hashie (>= 1.2)
22
- multi_json (>= 1.7.5, < 2.0)
23
- nokogiri (~> 1.6.0)
24
- oauth2
25
- guard (2.4.0)
26
- formatador (>= 0.2.4)
27
- listen (~> 2.1)
28
- lumberjack (~> 1.0)
29
- pry (>= 0.9.12)
30
- thor (>= 0.18.1)
31
- guard-rspec (4.2.6)
32
- guard (~> 2.1)
33
- rspec (>= 2.14, < 4.0)
34
- hashie (2.0.5)
35
- highline (1.6.20)
36
- inch (0.2.3)
37
- sparkr (>= 0.2.0)
38
- term-ansicolor
39
- yard (~> 0.8.7)
40
- jeweler (2.0.1)
41
- builder
42
- bundler (>= 1.0)
43
- git (>= 1.2.5)
44
- github_api
45
- highline (>= 1.6.15)
46
- nokogiri (>= 1.5.10)
47
- rake
48
- rdoc
49
- json (1.8.1)
50
- jwt (0.1.11)
51
- multi_json (>= 1.5)
52
- listen (2.4.1)
53
- celluloid (>= 0.15.2)
54
- rb-fsevent (>= 0.9.3)
55
- rb-inotify (>= 0.9)
56
- lumberjack (1.0.4)
57
- method_source (0.8.2)
58
- mini_portile (0.5.2)
59
- multi_json (1.8.4)
60
- multi_xml (0.5.5)
61
- multipart-post (2.0.0)
62
- nokogiri (1.6.1)
63
- mini_portile (~> 0.5.0)
64
- oauth2 (0.9.3)
65
- faraday (>= 0.8, < 0.10)
66
- jwt (~> 0.1.8)
67
- multi_json (~> 1.3)
68
- multi_xml (~> 0.5)
69
- rack (~> 1.2)
70
- pry (0.9.12.6)
71
- coderay (~> 1.0)
72
- method_source (~> 0.8)
73
- slop (~> 3.4)
74
- rack (1.5.2)
75
- rake (10.1.1)
76
- rb-fsevent (0.9.4)
77
- rb-inotify (0.9.3)
78
- ffi (>= 0.5.0)
79
- rdoc (3.12.2)
80
- json (~> 1.4)
81
- rspec (3.0.0.beta1)
82
- rspec-core (= 3.0.0.beta1)
83
- rspec-expectations (= 3.0.0.beta1)
84
- rspec-mocks (= 3.0.0.beta1)
85
- rspec-core (3.0.0.beta1)
86
- rspec-expectations (3.0.0.beta1)
87
- diff-lcs (>= 1.1.3, < 2.0)
88
- rspec-support (= 3.0.0.beta1)
89
- rspec-mocks (3.0.0.beta1)
90
- rspec-support (3.0.0.beta1)
91
- simplecov (0.8.2)
92
- docile (~> 1.1.0)
93
- multi_json
94
- simplecov-html (~> 0.8.0)
95
- simplecov-html (0.8.0)
96
- slop (3.4.7)
97
- sparkr (0.4.1)
98
- term-ansicolor (1.3.0)
99
- tins (~> 1.0)
100
- thor (0.18.1)
101
- timers (1.1.0)
102
- tins (1.0.0)
103
- yard (0.8.7.3)
104
-
105
- PLATFORMS
106
- ruby
107
-
108
- DEPENDENCIES
109
- bundler (~> 1.0)
110
- guard-rspec (~> 4.2.6)
111
- inch (~> 0.2.3)
112
- jeweler (~> 2.0.1)
113
- pry (~> 0.9.12.6)
114
- rdoc (~> 3.12)
115
- rspec (~> 3.0.0.beta1)
116
- simplecov
117
- yard (~> 0.7)