I know I can do:
module Foo
extend DL::Importable
dlload 'libquux.so'
@@bar = symbol 'bar'
end
where 'bar' is a variable in libquux. How do I assign a value to bar?
Specifically, I am trying to use libreadline via Ruby/DL (yes, I know
about ext/readline) and am trying to assign a callback to
rl_attempted_completion_function.
Thanks,
/Andrew
@@bar is considered as a pointer to a value. If its type is int, you can assign
an integer value as follows.
IntValue = struct ["int value"]
obj = IntValue.new(@@bar)
obj.value = 1
--
Takaaki Tateishi <tt...@ttsky.net>