Introduction
FFI stands for Foreign Function Interface. This project is ruby-ffi, an FFI implementation for Ruby.
- [[Why use FFI]] – Some good reasons to start playing with Ruby-FFI
- [[Features at a Glance]]
- [[Core Concepts]] – Fundamental high-level FFI concepts
- [[Basic usage]] – Basic usage concept examples underlying Ruby-FFI
- [[Examples]] – Real-world(ish) examples
- [[Windows Examples]] – Real-world(ish) examples using the Windows API
- [[Presentations]] – Talks and Presentations about FFI and related projects
Reference
- [[Loading Libraries]] – Tips on using
ffi_lib
, see also [[Using Multiple and Alternate Libraries]] - [[Types]] – A list of the supported types (like
:int
, etc.) - [[Enums]] – Using enums with FFI
- [[Structs]] – Using structs with FFI
- [[Pointers]] – Using pointers (including Strings) with FFI
- [[Binary Data]] – Handling binary data (e.g. Ruby Strings of Encoding::BINARY) with FFI
- [[Callbacks]] – Using function pointers to call Ruby code from C
- [[Functions with multiple signatures]]
- rdoc – detailed documentation here
Help
- Mailing list – Ask for support here!
- [[Using ruby ffi on Os X with mixed architectures, universal binaries]]
Initiatives
- [[Proposal for standard 1.0 API]] – consolidating the lessons learned
- [[Projects Using FFI]] – A list of projects using FFI