例外
とりあげた本の索引を作るためにスクリプトを用意して問題なく動いていたのだけれど、今回動かしたらなぜかエラーがでて止まってしまう。ずっと問題なく使ってきて、最近になって修正とか実験とかしていないのになぜだろうかと悩んでしまった。
エラーを見ると初めの時点ですでにおかしくなっていて、よくよく考えたら作った当初は想定していなかったことだった。必要な書籍情報を取得するためにコメントタグ内に書名などを埋め込んでいて、それを切り出しているのだけれど、当初は索引に該当する本ばかりですべてが索引にのるものばかりだった。それがそのうちに単に本のこととかを書いただけのものも出てきてしまったのがそもそもの原因のひとつ。
もっとも、これまではそれでも影響がなかったわけで、それゆえに油断していたというか知らずにいたわけで。今回書籍・雑誌インデックスファイルの先頭に索引に関係しない記事がきてしまっていたために、いきなり配列に push メソッドを使うことになって怒られてしまった。はじめはまったくそんなことを考えてもいなかった。
基本的に自分が使うだけなので、先頭にそうした記事がこないようにするとか注意すればよいのだけれど、結局そういうことってのはいずれ忘れてしまうので、一応の対策。
どうするのが一番いいだろうか、と考えてみて、そういや例外処理ってのがあったっけ、と本を見直してから begin:rescue:end でくくってやったらとりあえずそれで回避できたらしい(^^; 根本的な恐らくスマートな対策とは違うかもしれないが、まあそもそも運用でカバーできる範囲だったのだし、個人的に使うだけのものにそうそう手間をかけても、ということでとりあえず完了。
とはいえ、いずれまた問題がでたらまた悩むことにはなるのだろうなあ。
ま、そうして少しづつ覚えていくということなのでしょう。
| 固定リンク
コメント