タグ

2013年11月28日のブックマーク (1件)

  • TypedDataについて - mirichiの日記

    Ruby2.0でC拡張ライブラリ用のオブジェクト形式としてTypedDataが追加されている。俺はずっとRuby1.8&1.9用に作ってたからつい最近まで知らなかったのだが(新しいREADME.EXT.jaにも書いてないし)、RGenGCに対応する方法を追っかけてたらなんか出てきたという感じだ。今日ちょっといじってみたので把握したことをメモっておく。 ■RData 昔はRData構造体を使ってて、バージョンによってちょっと違ったりするが、だいたいこんな感じの構造になっている。 struct RData { struct RBasic basic; void (*dmark)(void*); void (*dfree)(void*); void *data; }; RBasicはフラグとクラスが入ったオブジェクトの基構造だ。dmark、dfreeはCの関数ポインタを格納する。それぞれGCの

    TypedDataについて - mirichiの日記
    kimuraw
    kimuraw 2013/11/28
    ruby2.0で追加された拡張ライブラリ用のAPIのTypedDataについて。従来のData_Make_StructよりTypedData_...のほうが便利そうな感じ。