class
Fiddle ::Function
ruby latest stable
- Superclass: Object
Description
A representation of a C function
Examples
‘strcpy’
@libc = Fiddle .dlopen "/lib/libc.so.6" #=> #<Fiddle::Handle:0x00000001d7a8d8> f = Fiddle ::Function.new ( @libc['strcpy'], [Fiddle ::TYPE_VOIDP, Fiddle ::TYPE_VOIDP], Fiddle ::TYPE_VOIDP) #=> #<Fiddle::Function:0x00000001d8ee00> buff = "000" #=> "000" str = f.call (buff, "123") #=> #<Fiddle::Pointer:0x00000001d0c380 ptr=0x000000018a21b8 size=0 free=0x00000000000000> str.to_s => "123"
ABI check
@libc = Fiddle .dlopen "/lib/libc.so.6" #=> #<Fiddle::Handle:0x00000001d7a8d8> f = Fiddle ::Function.new (@libc['strcpy'], [TYPE_VOIDP, TYPE_VOIDP], TYPE_VOIDP) #=> #<Fiddle::Function:0x00000001d8ee00> f.abi == Fiddle ::Function::DEFAULT #=> true
Constants
DEFAULT = Document-const
STDCALL = Document-const
Attributes
[R] abi
[R] name
[R] ptr
Files
- ext/fiddle/closure.c
- ext/fiddle/lib/fiddle/function.rb