Method: Fiddle::Closure::BlockCaller#initialize
- Defined in:
- lib/fiddle/closure.rb
#initialize(ctype, args, abi = Fiddle::Function::DEFAULT, &block) ⇒ BlockCaller
Description
Construct a new BlockCaller object.
-
ctypeis the C type to be returned -
argsare passed the callback -
abiis the abi of the closure
If there is an error in preparing the ffi_cif or ffi_prep_closure, then a RuntimeError will be raised.
Example
include Fiddle
cb = Closure::BlockCaller.new(TYPE_INT, [TYPE_INT]) do |one|
one
end
func = Function.new(cb, [TYPE_INT], TYPE_INT)
35 36 37 38 |
# File 'lib/fiddle/closure.rb', line 35 def initialize ctype, args, abi = Fiddle::Function::DEFAULT, &block super(ctype, args, abi) @block = block end |