Sha256: 28556523e00fdd7e068146781f22e37b167c24ccd8f9cfa05b80922206a84cef

Contents?: true

Size: 628 Bytes

Versions: 202

Compression:

Stored size: 628 Bytes

Contents

if !defined?(RUBY_ENGINE) || RUBY_ENGINE == 'ruby' || RUBY_ENGINE == 'rbx'
  Object.send(:remove_const, :FFI) if defined?(::FFI)
  begin
    require RUBY_VERSION.split('.')[0, 2].join('.') + '/ffi_c'
  rescue Exception
    require 'ffi_c'
  end

  require 'ffi/ffi'

elsif defined?(RUBY_ENGINE)
  # Remove the ffi gem dir from the load path, then reload the internal ffi implementation
  $LOAD_PATH.delete(File.dirname(__FILE__))
  $LOAD_PATH.delete(File.join(File.dirname(__FILE__), 'ffi'))
  unless $LOADED_FEATURES.nil?
    $LOADED_FEATURES.delete(__FILE__)
    $LOADED_FEATURES.delete('ffi.rb')
  end
  require 'ffi.rb'
end

Version data entries

202 entries across 167 versions & 26 rubygems

Version Path
ffi-1.9.9-x64-mingw32 lib/ffi.rb
ffi-1.9.9 lib/ffi.rb