>>697
rb_obj_is_kind_of か rb_obj_is_instance_of
または T_DATA であることをチェックしたうえで dfree の値を比較する

ダックタイピング云々の話を持ち出すべきか迷ったけど
引数に Data_Get_Struct とかするならそんなことは言ってられないな
trunk 限定なら TypedData を使えばもっと綺麗に書けそうなそうでもなさそうな