{"schema_version":1,"metadata":{"branch":"release","release":"7.9","architecture":"amd64","generated_at":"2026-09-09T04:04:02.361425+00:00","source_url":"https://cdn.openbsd.org/pub/OpenBSD/7.9/packages/amd64/sqlports-7.54.tgz","source_sha256":"2de00144847bf9da3a365be982f101dbb55d591ed7a915ea94984a16ab0e0404","package_count":12059,"source_kind":"sqlports"},"package":{"name":"ruby40-ffi-1.17.2","path":"devel/ruby-ffi,ruby40","url":"/packages/release/devel/ruby-ffi,ruby40/","comment":"cross-platform dynamic library loading for ruby","homepage":"https://github.com/ffi/ffi","maintainer":"Jeremy Evans <jeremy@openbsd.org>","description":"Ruby-FFI is a gem for programmatically loading dynamically-linked native\nlibraries, binding functions within them, and calling those functions\nfrom Ruby code. Moreover, a Ruby-FFI extension works without changes on\nCRuby (MRI), JRuby, Rubinius and TruffleRuby.\n\n* Intuitive DSL\n* Supports all C native types\n* C structs (also nested), enums and global variables\n* Callbacks from C to Ruby\n* Automatic garbage collection of native memory\n* Usable in Ractor: How-to-use-FFI-in-Ruby-Ractors\n","package_architecture":"amd64","stem":"ruby40-ffi","readme":null,"dependencies":[{"path":"devel/libffi","type":"library","package_spec":"","url":"/packages/release/devel/libffi/"},{"path":"lang/ruby/4.0","type":"library","package_spec":"","url":"/packages/release/lang/ruby/4.0/"},{"path":"lang/ruby/4.0","type":"runtime","package_spec":"","url":"/packages/release/lang/ruby/4.0/"},{"path":"lang/ruby/4.0","type":"build","package_spec":"","url":"/packages/release/lang/ruby/4.0/"}],"reverse_dependencies":{"count":6,"url":"/packages/data/c6/c6d5bf042673e4c65d8912470ace4f81effa63924b14123c3a98cd59a7a61a1f.json"},"categories":["devel","lang/ruby"],"flavors":["ruby33","ruby34","ruby40"],"only_for_architectures":["aarch64","amd64","arm","i386","mips64","mips64el","powerpc","powerpc64","riscv64","alpha","hppa","sparc64"],"not_for_architectures":[]}}
