diff options
author | zzak <zzak@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-27 23:26:07 +0000 |
---|---|---|
committer | zzak <zzak@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-11-27 23:26:07 +0000 |
commit | 9c831edbf4f30fdcf90d8c991ded624c27898874 (patch) | |
tree | 65e7dc87ad5016d456ef5aa81ef80639e614eb6d /ext/fiddle/fiddle.c | |
parent | 7e4b6fa7d601a5a15b760e8bccd3f583ea89fef7 (diff) |
* ext/fiddle/closure.c: Documentation for Fiddle
* ext/fiddle/pointer.c: ditto
* ext/fiddle/function.c: ditto
* ext/fiddle/lib/fiddle.rb: ditto
* ext/fiddle/fiddle.c: ditto
* ext/fiddle/handle.c: ditto
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/fiddle/fiddle.c')
-rw-r--r-- | ext/fiddle/fiddle.c | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/ext/fiddle/fiddle.c b/ext/fiddle/fiddle.c index 06b08639f4..c4b590ca84 100644 --- a/ext/fiddle/fiddle.c +++ b/ext/fiddle/fiddle.c @@ -135,9 +135,34 @@ Init_fiddle(void) /* * Document-module: Fiddle * + * A libffi wrapper for Ruby. + * * == Description * - * A libffi wrapper. + * Fiddle is an extension to translate a foreign function interface (FFI) + * with ruby. + * + * It wraps {libffi}[http://sourceware.org/libffi/], a popular C library + * which provides a portable interface that allows code written in one + * language to clal code written in another language. + * + * == Example + * + * Here we will use Fiddle::Function to wrap {floor(3) from + * libm}[http://linux.die.net/man/3/floor] + * + * require 'fiddle' + * + * libm = Fiddle.dlopen('/lib/libm.so.6') + * + * floor = Fiddle::Function.new( + * libm['floor'], + * [Fiddle::TYPE_DOUBLE], + * Fiddle::TYPE_DOUBLE + * ) + * + * puts floor.call(3.14159) #=> 3.0 + * * */ mFiddle = rb_define_module("Fiddle"); |