如何在RubyFFI中将结构指定为函数的返回值?

我必须加载几个从库本身返回结构的函数。

attach_function 'fn_name', [], # ... What do I put here? 

RubyFFI的Wiki页面似乎已经过时了,所以我在这里有点迷失。

如何创建FFI::Struct ,如何将其指定为本机函数的返回类型?

 class SOME_STRUCT < FFI::Struct layout :a, :float, :b, :float end 

然后

 attach_function 'fn_name', [], SOME_STRUCT 

如果是堆栈分配的结构:

 typedef struct { float a, b; } SOME_STRUCT; 

你应该用这个:

 attach_function 'fn_name', [], SOME_STRUCT.by_value