|
From: Masaaki A. <mas...@gm...> - 2011-12-19 13:12:38
|
青柳です。
> であれば、rb_sym_to_s()の方がよさそうです。
rb_sym_to_sを使用するように変更しました。
プロパティへの対応もする必要があるのでglib2を見たら、type_to_prop_(setter|getter)_table
のような変換関数テーブルを使った仕組みがあるようですので、それを利用しようと考えています。
が、以下のようにテーブルへアクセスする際のキーがrb_str_new2、rb_intern、CSTR2RVAL
とまちまちになっています。
rbgobj_register_property_setter():
rb_hash_aset(table, rb_str_new2(g_param_spec_get_name(pspec)),
Data_Wrap_Struct(rb_cData, NULL, NULL, func));
rbgobj_register_property_getter():
rb_hash_aset(table, rb_str_new2(g_param_spec_get_name(pspec)),
Data_Wrap_Struct(rb_cData, NULL, NULL, func));
rg_set_property():
rb_hash_aref(table, rb_intern(g_param_spec_get_name(pspec)));
rg_get_property():
rb_hash_aref(table, CSTR2RVAL(g_param_spec_get_name(pspec)));
どれかに統一したいのですが、何が良いでしょうか?
|