Sha256: 240958a09d18966b3493a80903e8d041d4ca8ddca8cc11b617b102f921b5acb4

Contents?: true

Size: 1.54 KB

Versions: 2

Compression:

Stored size: 1.54 KB

Contents

ruby-ffi
    by Wayne Meissner
    http://kenai.com/projects/ruby-ffi

== DESCRIPTION:

Ruby-FFI is a ruby extension for programmatically loading dynamic
libraries, binding functions within them, and calling those functions
from Ruby code. Moreover, a Ruby-FFI extension works without changes
on Ruby and JRuby. Discover why should you write your next extension
using Ruby-FFI {here}[http://kenai.com/projects/ruby-ffi/pages/WhyUseFFI].

== FEATURES/PROBLEMS:

* It has a very intuitive DSL
* It supports all C native types
* It supports C structs (also nested), enums and global variables
* It supports callbacks
* It has smart methods to handle memory management of pointers and structs

== SYNOPSIS:

  require 'ffi'

  module MyLib
    extend FFI::Library
    attach_function :puts, [ :string ], :int
  end

  MyLib.puts 'Hello boys using libc!'

For less minimalistic and more sane examples you may look at:

* the samples/ folder
* the examples on the Kenai {wiki}[http://kenai.com/projects/ruby-ffi/pages/Home]
* the projects using FFI listed on this {page}[http://kenai.com/projects/ruby-ffi/pages/ProjectsUsingFFI]

== REQUIREMENTS:

* You need a sane building environment in order to compile the extension.

== DOWNLOAD/INSTALL:

From rubyforge:

  [sudo] gem install ffi

or from the mercurial repository on Kenai:

  hg clone https://kenai.com/hg/ruby-ffi~mercurial ruby-ffi
  cd ruby-ffi
  rake gem:install

== CREDITS:

Special thanks to:

Yehuda Katz
Luc Heinrich
Andrea Fazzi
Mike Dalessio
Hongli Lai
Evan Phoenix
Aman Gupta
Beoran

== LICENSE:

See LICENSE file.

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ffi-0.4.0-x86-mswin32 README.rdoc
ffi-0.4.0 README.rdoc