Ruby-FFIについて調べてみた。(その4)

残すはFFI::MemoryPointerの話のみ。 OUT引数 Cのインタフェースを設計するときに、関数にポインタを渡し、ポインタを介することで関数の出力を受け取るようにするということがよくある。 例えば、次のようなコードが一例。 /* rbuf.h */ typedef struct _ring_buffer rbuf_t; typedef unsigned int uint_t; void rbuf_cre…