[#40130] Ruby/Tk の講習会 — Hidetoshi NAGAI <nagai@...>

永井@知能.九工大です.

12 messages 2004/10/25

[ruby-list:40086] Re: require 中に例外が発生したときの対処について

From: Yukihiro Matsumoto <matz@...>
Date: 2004-10-13 07:11:32 UTC
List: ruby-list #40086
まつもと ゆきひろです

In message "Re: [ruby-list:40085] require 中に例外が発生したときの対処について"
    on Wed, 13 Oct 2004 14:35:39 +0900, SASADA Koichi <ko1@atdot.net> writes:

| あるファイルを require 中に、たとえばその先で require する
|ものがインストールされていなかった場合など、例外が発生します。
|そのとき、$" には、最初に require したファイルが記録されます
|ので、次に require しても、読み込みを行いません。たとえば、
|例外発生要因を取り除いた後にもう一度 require するような場合、
|これに気づかずにはまるかもしれません(というか、はまった)。

うーむ、本当は

  provideはrequireが成功してから

という風に実装すべきなんですが、これをするとrequire中にふた
たび同じライブラリをrequireしたときに無限ループに陥ると言う
問題が生じます。おそらく、現在require中のものとすでにrequire
したものの両方のリストを見ればよいのでしょうね。

|・考えてみた解決案3
|
| そんなケースはレアなので、あきらめる。

当面はそれでもよいような気がします。「ほしいなあ」と繰り返し
叫べば親切な人がeval.cをハックして上記の機能を実現してくれる
かもしれません。

                                まつもと ゆきひろ /:|)

In This Thread