APIdock / Ruby
/
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

AltStyle によって変換されたページ (->オリジナル) /