Method: FFI::VariadicInvoker#attach
- Defined in:
- lib/ffi/variadic.rb
#attach(mod, mname) ⇒ Object
Attach the invoker to module mod as mname
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/ffi/variadic.rb', line 53 def attach(mod, mname) invoker = self params = "*args" call = "call" mname = mname.to_sym mod.module_eval " @ffi_functions = {} unless defined?(@ffi_functions)\n @ffi_functions[\#{mname.inspect}] = invoker\n\n def self.\#{mname}(\#{params})\n @ffi_functions[\#{mname.inspect}].\#{call}(\#{params})\n end\n\n define_method(\#{mname.inspect}, &method(\#{mname.inspect}))\n code\n invoker\nend\n", __FILE__, __LINE__ |