Method: Fiddle::Pointer#call_free

Defined in:
ext/fiddle/pointer.c,
lib/fiddle/ffi_backend.rb

#call_freenil

Call the free function for this pointer. Calling more than once will do nothing. Does nothing if there is no free function attached.

Returns:

  • (nil)


462
463
464
465
466
467
468
469
470
471
# File 'ext/fiddle/pointer.c', line 462

def call_free
  return if @free.nil?
  return if @freed
  if @free == RUBY_FREE
    LibC::FREE.call(ffi_ptr)
  else
    @free.call(ffi_ptr)
  end
  @freed = true
end