summaryrefslogtreecommitdiff
path: root/vendor/bundle/ruby/3.4.0/gems/ffi-1.17.4-arm64-darwin/samples/hello_ractor.rb
blob: 9a01704c4a5f137d43404545d87a17fa7a5007a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# See the ffi wiki for how to use FFI with Ractors:
# https://github.com/ffi/ffi/wiki/Ractors

require 'ffi'

class Ractor
  # compat with Ruby-3.4 and older
  alias value take unless method_defined? :value
end

module Foo
  extend FFI::Library
  ffi_lib FFI::Library::LIBC
  attach_function("cputs", "puts", [ :string ], :int)
  freeze
end
Ractor.new do
  Foo.cputs("Hello, World via libc puts using FFI in a Ractor")
end.value