summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortduehr <td@matasano.com>2016-07-25 09:11:21 -0700
committerGitHub <noreply@github.com>2016-07-25 09:11:21 -0700
commit5212d3b2b5de98969748766ea4454d92428a9eea (patch)
tree1ba434af29fdab0d428ac5059c9500c54e85378c
parentb9749bf7d9935dac007617891988c9f06704c2d0 (diff)
parent50cf1f4bab548e682e33df201b9fed2eb421aa16 (diff)
downloadffi-5212d3b2b5de98969748766ea4454d92428a9eea.tar.gz
Merge pull request #516 from furunkel/pointer_to_ptr
Add Pointer#to_ptr
-rw-r--r--lib/ffi/pointer.rb5
-rw-r--r--spec/ffi/pointer_spec.rb7
2 files changed, 12 insertions, 0 deletions
diff --git a/lib/ffi/pointer.rb b/lib/ffi/pointer.rb
index bfd9406..81859b1 100644
--- a/lib/ffi/pointer.rb
+++ b/lib/ffi/pointer.rb
@@ -130,5 +130,10 @@ module FFI
}
self
end
+
+ # @return [self]
+ def to_ptr
+ self
+ end
end
end
diff --git a/spec/ffi/pointer_spec.rb b/spec/ffi/pointer_spec.rb
index 19c1953..bc981e6 100644
--- a/spec/ffi/pointer_spec.rb
+++ b/spec/ffi/pointer_spec.rb
@@ -62,6 +62,13 @@ describe "Pointer" do
expect { PointerTestLib.ptr_ret_int32(0xfee1deadbeefcafebabe, 0) }.to raise_error
end
+ it "#to_ptr" do
+ memory = FFI::MemoryPointer.new :pointer
+ expect(memory.to_ptr).to eq(memory)
+
+ expect(FFI::Pointer::NULL.to_ptr).to eq(FFI::Pointer::NULL)
+ end
+
describe "pointer type methods" do
it "#read_pointer" do