エラー検出機構実装

対応したエラーは、以下の3種類。

  • 文法間違い(括弧の対応がおかしい等)
  • コンパイルエラー(存在しない関数のコール等)
  • 実行時エラー(ロードしようとしたファイルが存在しない)

シンタックスエラーはスキャナでないと検出できんし、セマンティクスエラーはパーサー、実行時エラーはSDLラッパでないと、検出できやんもん。そっこら中に、begin/rescue/endをばらまいた。

そのうえ、対応するスクリプトファイル名と行数もいるし、できればどこの関数内でエラーになってるかもしりたい。で、ファイル名と行数をたらい回し。おかげで関数やらコンストラクタの引数がやたら増えた。引数オブジェクトを使って、リファクタリングせんとあかんなぁ。

Subversionはもう、落ちてるっぽいので今日はもう寝るっ。あー、疲れた。