Module: NDAV::FFI::MemoryPointer::Converter

Defined in:
lib/ndav/ffi.rb

Instance Method Summary collapse

Instance Method Details

#FFIMemoryPointer(array) ⇒ Object



49
50
51
52
53
54
55
56
57
58
59
# File 'lib/ndav/ffi.rb', line 49

def FFIMemoryPointer(array, *, **)
  if ::FFI::MemoryPointer === array
    array
  elsif array.respond_to? :to_ffi_memory_pointer
    array.to_ffi_memory_pointer(*, **)
  elsif array.respond_to? :to_ndav
    array.to_ndav(*, **).to_ffi_memory_pointer
  else
    ::NDAV.new(array, *, **).to_ffi_memory_pointer
  end
end