unloadでもっと環境を綺麗にする。unbindのテストを考える。more short, beauty, right and clear code.
ところでコミットしたんだけど、rjbexception.cからはrjb_s_load()(rjb.c)を参照できないので、rjb_s_throw()ではrb_funcall()で解決してたりして凄く悩ましい。安易にextern増やすのも嫌だし。
load.cに移してそっちでexternするのがいいのかも。
追記:書いたのは(2行目から下は消化済だけど)、あくまで俺のtodo。Rjbプロジェクトとして…、という話ではない。早々にやらなきゃなと思っているだけで、いつまでにやる、とかいう話でもない。普通に使う範囲にはたぶん影響しない。
unloadが気になっているのは、testのteardownでunloadしてるけど、ちゃんとキレイになってないので後発のテストでちゃんと失敗しないところがある、と考えてるから。あ、いや、違うな。load/unload自体のテストがないってことか。現状ではRjbのクラスメソッドを読んだ途端にグローバルに状態が変わる。状態が変わっていく中で操作してエラーにならんかとか見ないといけない。少なくともsegvは避けたい。グローバルに状態を変えないようなデザインにもできると思うのだが、しかしそれでは使いづらいと思う。(常にRjbインスタンス経由でアクセスする(でなきゃ継承するとかブロック使うか)ことになるのかな。それだとカジュアルには使いづらいだろう。)
より良いコードにするのはユーザには、まあ、関係ないか。なくはないけどないといえばない。今のコードも結構イケてる。少なくとも、全然ダメとは思ってない。(俺のコードは微々たるものなので、こう書くとなんか偉そうだが)
<< arton [うーん、rjb_s_loadはRubyに移出している関数で、移出元はすべからくメインのrjb.cに入れたい。したがっ..]
<< arton [niが確定モードになってたものだから、Enterで送信されてしまいました。 load.cへ移動してそこでextern..]
<< kuwa1 [それに近いことになりました。]