module Fiddle::FFIBackend
Constants
- FFITypes
Public Class Methods
to_ffi_type(fiddle_type)
click to toggle source
# File fiddle/lib/fiddle/ffi_backend.rb, line 107 def self.to_ffi_type(fiddle_type) if fiddle_type.is_a?(Symbol) fiddle_type = Types.const_get(fiddle_type.to_s.upcase) end if !fiddle_type.is_a?(Integer) && fiddle_type.respond_to?(:to_int) fiddle_type = fiddle_type.to_int end ffi_type = FFITypes[fiddle_type] ffi_type = FFITypes[-fiddle_type] if ffi_type.nil? && fiddle_type.is_a?(Integer) && fiddle_type < 0 raise TypeError.new("cannot convert #{fiddle_type} to ffi") unless ffi_type ffi_type end