ffi-extra 0.0.2 → 0.0.3.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/ffi/extra.rb +10 -2
  2. metadata +2 -2
data/lib/ffi/extra.rb CHANGED
@@ -14,7 +14,7 @@ module FFI
14
14
  def self.type_size (type)
15
15
  type = FFI.find_type(type) if type.is_a?(Symbol)
16
16
 
17
- if type.is_a?(Type::Builtin) || type.is_a?(Class) && type.ancestors.member?(FFI::Struct) || type.ancestors.member?(FFI::ManagedStruct)
17
+ if type.is_a?(Type::Builtin) || (type.is_a?(Class) && (type.ancestors.member?(FFI::Struct) || type.ancestors.member?(FFI::ManagedStruct)))
18
18
  type.size
19
19
  elsif type.respond_to? :from_native
20
20
  type.native_type.size
@@ -100,7 +100,7 @@ module FFI
100
100
  end
101
101
  end
102
102
 
103
- def read_array_of (number, type)
103
+ def read_array_of (type, number)
104
104
  if type.is_a?(Symbol)
105
105
  if respond_to? "read_array_of_#{type.downcase}"
106
106
  return send "read_array_of_#{type.downcase}", number
@@ -150,3 +150,11 @@ module FFI
150
150
  find_type(:size_t) rescue typedef(:ulong, :size_t)
151
151
  find_type(:ssize_t) rescue typedef(:long, :ssize_t)
152
152
  end
153
+
154
+ [Integer, String, NilClass, TrueClass, FalseClass, FFI::Pointer].each {|klass|
155
+ klass.instance_eval {
156
+ define_method :to_ffi do
157
+ self
158
+ end
159
+ }
160
+ }
metadata CHANGED
@@ -2,7 +2,7 @@
2
2
  name: ffi-extra
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.0.2
5
+ version: 0.0.3.1
6
6
  platform: ruby
7
7
  authors:
8
8
  - meh.
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2011-09-11 00:00:00 Z
13
+ date: 2011-09-21 00:00:00 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: ffi