From: Satoshi GUNJI Date: 2011-06-06T19:15:35+09:00 Subject: [ruby-dev:43638] Re: [ruby-list:48149] Re: requireが配列を取れたら便利だと思うんだけど.. 郡司と申します。 > むらたです。 > require が glob パターンを解釈できれば、 > > require %w(simple ruby c).map {|r| "rdoc/parser/#{r}"} > > この部分は、 > > require "rdoc/parser/{simple,ruby,c}" > > と書けるようになりますね。 面白そうなので、いい加減なコードですが実装してみました。 requireの引数がひとつのときはglobパターンを解釈し、 引数が複数のとき(配列)はそれぞれをrequireします。 -- module Kernel alias original_require require def require(arg1, *arg2) if arg2.size.zero? $:.map {|path| Dir.glob(File.join(path, "#{arg1}{.rb,.so,.dll,.bundle}")) }.flatten.map {|i| original_require(i) } else [arg1, *arg2].map {|i| original_require(i) } end end module_function :require end --