ffi-bit_masks 0.1.0 → 0.1.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: 297221cec74737fc8f7bb7979a4e0d1bac269816
4
- data.tar.gz: ac741bdecf847e163e07e008cce18d795b635787
3
+ metadata.gz: a03c17875bba4fcbc14670c4f40e02a98fc31dc5
4
+ data.tar.gz: babaf9890efd01a91ea48aef116e60434bcde567
5
5
  SHA512:
6
- metadata.gz: 5a8180e2b600f5c91cd9aeacc30f0cc6de01a0f5cf8636dc0f73300a1fec87d434f07c2d2d700440decd80eee997d4f6acbeaa593356a7ec75963a8886d0ca8d
7
- data.tar.gz: dde56b83e995fe73ba6d38f1fe85fb40733309c2e5267089792edb18c6e8518faaedd2f69f1ff03a499124c48ce38fb0807d8feb1e216ac893d104298c4d7236
6
+ metadata.gz: 390a534397b461a40828c0e8cbcd1b2c3759b31ad8d5b89ced6447c6a292a17b87d76b18a4e876df3f8424f3c63b4c544c35010ee5edd376f7ae049c9bc05dc5
7
+ data.tar.gz: 5a05ed68a37bd4d8b49abcf8e5bf40646fe0fd8fc35b6d1bca12999f66bda68ad908e56e386ce096905ee56829afa743ecad33dda50098ba6fb40c533da68b7d
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  doc/
2
2
  pkg/
3
+ Gemfile.lock
@@ -0,0 +1,9 @@
1
+ language: ruby
2
+
3
+ rvm:
4
+ - 1.9.3
5
+ - 2.3.0
6
+ - jruby
7
+ - rbx
8
+
9
+ script: rake spec
@@ -1,3 +1,7 @@
1
+ ### 0.1.1 / 2016-03-08
2
+
3
+ * Added {FFI::BitMasks::BitMask#reference_required?} needed by JRuby. (@mvz)
4
+
1
5
  ### 0.1.0 / 2013-08-27
2
6
 
3
7
  * Initial release:
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development do
6
+ gem 'kramdown'
7
+ end
data/Rakefile CHANGED
@@ -1,40 +1,22 @@
1
1
  # encoding: utf-8
2
2
 
3
- require 'rubygems'
4
- require 'rake'
5
-
6
3
  begin
7
- gem 'rubygems-tasks', '~> 0.2'
8
- require 'rubygems/tasks'
9
-
10
- Gem::Tasks.new
11
- rescue LoadError => e
12
- warn e.message
13
- warn "Run `gem install rubygems-tasks` to install Gem::Tasks."
4
+ require 'bundler/setup'
5
+ rescue LoadError => error
6
+ abort error.message
14
7
  end
15
8
 
16
- begin
17
- gem 'rspec', '~> 2.4'
18
- require 'rspec/core/rake_task'
9
+ require 'rake'
19
10
 
20
- RSpec::Core::RakeTask.new
21
- rescue LoadError => e
22
- task :spec do
23
- abort "Please run `gem install rspec` to install RSpec."
24
- end
25
- end
11
+ require 'rubygems/tasks'
12
+ Gem::Tasks.new
13
+
14
+ require 'rspec/core/rake_task'
15
+ RSpec::Core::RakeTask.new
26
16
 
27
17
  task :test => :spec
28
18
  task :default => :spec
29
19
 
30
- begin
31
- gem 'yard', '~> 0.8'
32
- require 'yard'
33
-
34
- YARD::Rake::YardocTask.new
35
- rescue LoadError => e
36
- task :yard do
37
- abort "Please run `gem install yard` to install YARD."
38
- end
39
- end
20
+ require 'yard'
21
+ YARD::Rake::YardocTask.new
40
22
  task :doc => :yard
@@ -12,6 +12,7 @@ dependencies:
12
12
  ffi: ~> 1.0
13
13
 
14
14
  development_dependencies:
15
- rspec: ~> 2.4
15
+ rspec: ~> 3.0
16
16
  rubygems-tasks: ~> 0.2
17
17
  yard: ~> 0.8
18
+ rake: ~> 10.4
@@ -182,6 +182,9 @@ module FFI
182
182
  return flags
183
183
  end
184
184
 
185
+ def reference_required?
186
+ false
187
+ end
185
188
  end
186
189
  end
187
190
  end
@@ -1,6 +1,6 @@
1
1
  module FFI
2
2
  module BitMasks
3
3
  # ffi-bit_masks version
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
6
6
  end
@@ -10,66 +10,66 @@ describe FFI::BitMasks::BitMask do
10
10
  subject { described_class.new(flags) }
11
11
 
12
12
  it "should initialize the flags" do
13
- subject.flags.should == flags
13
+ expect(subject.flags).to eq(flags)
14
14
  end
15
15
 
16
16
  it "should invert the flags into bitmasks" do
17
- subject.bitmasks.should == flags.invert
17
+ expect(subject.bitmasks).to eq(flags.invert)
18
18
  end
19
19
 
20
20
  it "should default type to uint" do
21
- subject.native_type.should == FFI::Type::UINT
21
+ expect(subject.native_type).to eq(FFI::Type::UINT)
22
22
  end
23
23
 
24
24
  context "when given a custom type" do
25
25
  subject { described_class.new(flags,:ushort) }
26
26
 
27
27
  it "should set native type" do
28
- subject.native_type.should == FFI::Type::USHORT
28
+ expect(subject.native_type).to eq(FFI::Type::USHORT)
29
29
  end
30
30
  end
31
31
  end
32
32
 
33
33
  describe "#symbols" do
34
34
  it "should return the names of the flags" do
35
- subject.symbols.should == flags.keys
35
+ expect(subject.symbols).to eq(flags.keys)
36
36
  end
37
37
  end
38
38
 
39
39
  describe "#symbol_map" do
40
40
  it "should return the flags" do
41
- subject.symbol_map.should == flags
41
+ expect(subject.symbol_map).to eq(flags)
42
42
  end
43
43
  end
44
44
 
45
45
  describe "#to_h" do
46
46
  it "should return the flags" do
47
- subject.to_h.should == flags
47
+ expect(subject.to_h).to eq(flags)
48
48
  end
49
49
  end
50
50
 
51
51
  describe "#to_hash" do
52
52
  it "should return the flags" do
53
- subject.to_hash.should == flags
53
+ expect(subject.to_hash).to eq(flags)
54
54
  end
55
55
  end
56
56
 
57
57
  describe "#[]" do
58
58
  context "when given a Symbol" do
59
59
  it "should lookup the bitmask" do
60
- subject[:bar].should == flags[:bar]
60
+ expect(subject[:bar]).to eq(flags[:bar])
61
61
  end
62
62
  end
63
63
 
64
64
  context "when given an Integer" do
65
65
  it "should lookup the flag" do
66
- subject[flags[:bar]].should == :bar
66
+ expect(subject[flags[:bar]]).to eq(:bar)
67
67
  end
68
68
  end
69
69
 
70
70
  context "otherwise" do
71
71
  it "should return nil" do
72
- subject[Object.new].should be_nil
72
+ expect(subject[Object.new]).to be_nil
73
73
  end
74
74
  end
75
75
  end
@@ -79,14 +79,14 @@ describe FFI::BitMasks::BitMask do
79
79
  let(:hash) { {:foo => true, :bar => true, :baz => false} }
80
80
 
81
81
  it "should bitwise or together the flag masks" do
82
- subject.to_native(hash).should == (flags[:foo] | flags[:bar])
82
+ expect(subject.to_native(hash)).to eq(flags[:foo] | flags[:bar])
83
83
  end
84
84
 
85
85
  context "when one of the keys does not correspond to a flag" do
86
86
  let(:hash) { {:foo => true, :bug => true, :baz => true} }
87
87
 
88
88
  it "should ignore the key" do
89
- subject.to_native(hash).should == (flags[:foo] | flags[:baz])
89
+ expect(subject.to_native(hash)).to eq(flags[:foo] | flags[:baz])
90
90
  end
91
91
  end
92
92
  end
@@ -95,14 +95,14 @@ describe FFI::BitMasks::BitMask do
95
95
  let(:int) { 0x3 }
96
96
 
97
97
  it "should call #to_int" do
98
- subject.to_native(int).should == 0x3
98
+ expect(subject.to_native(int)).to eq(0x3)
99
99
  end
100
100
 
101
101
  context "when given a bitmask that contains unknown masks" do
102
102
  let(:int) { flags[:foo] | flags[:bar] | 0x8 | 0x10 }
103
103
 
104
104
  it "should filter out the unknown masks" do
105
- subject.to_native(int).should == (
105
+ expect(subject.to_native(int)).to eq(
106
106
  flags[:foo] | flags[:bar]
107
107
  )
108
108
  end
@@ -111,9 +111,9 @@ describe FFI::BitMasks::BitMask do
111
111
 
112
112
  context "when given an Object that does not respond to #to_int" do
113
113
  it "should raise an ArgumentError" do
114
- lambda {
114
+ expect {
115
115
  subject.to_native(Object.new)
116
- }.should raise_error(ArgumentError)
116
+ }.to raise_error(ArgumentError)
117
117
  end
118
118
  end
119
119
  end
@@ -122,11 +122,11 @@ describe FFI::BitMasks::BitMask do
122
122
  let(:value) { flags[:foo] | flags[:baz] }
123
123
 
124
124
  it "should set the flags from the value" do
125
- subject.from_native(value).should == {
125
+ expect(subject.from_native(value)).to eq({
126
126
  :foo => true,
127
127
  :bar => false,
128
128
  :baz => true
129
- }
129
+ })
130
130
  end
131
131
 
132
132
  context "when one flag is a combination of other flags" do
@@ -134,11 +134,11 @@ describe FFI::BitMasks::BitMask do
134
134
  let(:value) { flags[:foo] | flags[:bar] }
135
135
 
136
136
  it "should set all flags whose bitmasks are present" do
137
- subject.from_native(value).should == {
137
+ expect(subject.from_native(value)).to eq({
138
138
  :foo => true,
139
139
  :bar => true,
140
140
  :baz => true
141
- }
141
+ })
142
142
  end
143
143
  end
144
144
 
@@ -146,11 +146,11 @@ describe FFI::BitMasks::BitMask do
146
146
  let(:value) { flags[:foo] | flags[:baz] | 0x8 | 0x10 }
147
147
 
148
148
  it "should ignore the unknown flags" do
149
- subject.from_native(value).should == {
149
+ expect(subject.from_native(value)).to eq({
150
150
  :foo => true,
151
151
  :bar => false,
152
152
  :baz => true
153
- }
153
+ })
154
154
  end
155
155
  end
156
156
  end
@@ -3,7 +3,7 @@ require 'ffi/bit_masks'
3
3
 
4
4
  describe FFI::BitMasks do
5
5
  it "should have a VERSION constant" do
6
- subject.const_get('VERSION').should_not be_empty
6
+ expect(subject.const_get('VERSION')).not_to be_empty
7
7
  end
8
8
 
9
9
  describe "#bit_mask" do
@@ -16,13 +16,13 @@ describe FFI::BitMasks do
16
16
  let(:flags) { {:foo => 0x1, :bar => 0x2, :baz => 0x4} }
17
17
 
18
18
  it "should return a BitMask object" do
19
- subject.bit_mask(:flags,flags).flags.should == flags
19
+ expect(subject.bit_mask(:flags,flags).flags).to eq(flags)
20
20
  end
21
21
 
22
22
  it "should define a typedef for the bitmask" do
23
23
  bitmask = subject.bit_mask(:flags,flags)
24
24
 
25
- subject.find_type(:flags).should be_kind_of(FFI::Type::Mapped)
25
+ expect(subject.find_type(:flags)).to be_kind_of(FFI::Type::Mapped)
26
26
  end
27
27
  end
28
28
  end
@@ -1,4 +1,3 @@
1
- gem 'rspec', '~> 2.4'
2
1
  require 'rspec'
3
2
  require 'ffi/bit_masks/version'
4
3
 
metadata CHANGED
@@ -1,71 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ffi-bit_masks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Postmodern
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-08-27 00:00:00.000000000 Z
11
+ date: 2016-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ~>
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '1.0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ~>
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '1.0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ~>
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '2.4'
33
+ version: '3.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ~>
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '2.4'
40
+ version: '3.0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: rubygems-tasks
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ~>
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
47
  version: '0.2'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ~>
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.2'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: yard
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ~>
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0.8'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ~>
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0.8'
69
+ - !ruby/object:Gem::Dependency
70
+ name: rake
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '10.4'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '10.4'
69
83
  description: FFI plugin which adds support for bitmasked types (or flags) to FFI.
70
84
  email: postmodern.mod3@gmail.com
71
85
  executables: []
@@ -75,11 +89,13 @@ extra_rdoc_files:
75
89
  - LICENSE.txt
76
90
  - README.md
77
91
  files:
78
- - .document
79
- - .gitignore
80
- - .rspec
81
- - .yardopts
92
+ - ".document"
93
+ - ".gitignore"
94
+ - ".rspec"
95
+ - ".travis.yml"
96
+ - ".yardopts"
82
97
  - ChangeLog.md
98
+ - Gemfile
83
99
  - LICENSE.txt
84
100
  - README.md
85
101
  - Rakefile
@@ -101,17 +117,17 @@ require_paths:
101
117
  - lib
102
118
  required_ruby_version: !ruby/object:Gem::Requirement
103
119
  requirements:
104
- - - '>='
120
+ - - ">="
105
121
  - !ruby/object:Gem::Version
106
122
  version: '0'
107
123
  required_rubygems_version: !ruby/object:Gem::Requirement
108
124
  requirements:
109
- - - '>='
125
+ - - ">="
110
126
  - !ruby/object:Gem::Version
111
127
  version: '0'
112
128
  requirements: []
113
129
  rubyforge_project:
114
- rubygems_version: 2.0.5
130
+ rubygems_version: 2.4.7
115
131
  signing_key:
116
132
  specification_version: 4
117
133
  summary: Adds support for bit-masked types in FFI.