summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortenderlove <tenderlove@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-11-01 01:46:56 +0000
committertenderlove <tenderlove@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-11-01 01:46:56 +0000
commit545dfac5d42d1b6951a5db2395bde5247741f568 (patch)
tree350a8efd632ae88772e17eae8e533af36f6db9db
parent3fdf73f236d5a8816df18bf7dbdbd66610d3e427 (diff)
downloadruby-545dfac5d42d1b6951a5db2395bde5247741f568.tar.gz
ruby-545dfac5d42d1b6951a5db2395bde5247741f568.tar.xz
ruby-545dfac5d42d1b6951a5db2395bde5247741f568.zip
* ext/dl/cptr.c (rb_dlptr_to_value) added documentation
* test/dl/test_cptr.rb (test_to_value) testing DL::CPtr#to_value git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25607 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ext/dl/cptr.c5
-rw-r--r--test/dl/test_cptr.rb6
2 files changed, 11 insertions, 0 deletions
diff --git a/ext/dl/cptr.c b/ext/dl/cptr.c
index 488b31202..555236f2a 100644
--- a/ext/dl/cptr.c
+++ b/ext/dl/cptr.c
@@ -197,6 +197,11 @@ rb_dlptr_to_i(VALUE self)
return PTR2NUM(data->ptr);
}
+/*
+ * call-seq: to_value
+ *
+ * Cast this CPtr to a ruby object.
+ */
VALUE
rb_dlptr_to_value(VALUE self)
{
diff --git a/test/dl/test_cptr.rb b/test/dl/test_cptr.rb
index 4157f8336..461b7d27d 100644
--- a/test/dl/test_cptr.rb
+++ b/test/dl/test_cptr.rb
@@ -3,6 +3,12 @@ require_relative '../ruby/envutil'
module DL
class TestCPtr < TestBase
+ def test_to_value
+ ary = [0,1,2,4,5]
+ addr = CPtr.new(dlwrap(ary))
+ assert_equal ary, addr.to_value
+ end
+
def test_free
ptr = CPtr.malloc(4)
assert_nil ptr.free