From: "U.Nakamura" Date: 2008-05-14T19:16:27+09:00 Subject: [ruby-dev:34700] Re: fork 不可能な環境での test_argv0_noarg こんにちは、なかむら(う)です。 In message "[ruby-dev:34698] Re: fork 不可能な環境での test_argv0_noarg" on May.14,2008 18:54:24, wrote: > > メソッドだけあっても絶対実行不可能なら意味はないわけで、それ > > ならrespond_to?で判断できるメリットの方が上だと思います。 > > 特に、何らかの事情で、実際にそのメソッドを使用する前に、本当 > > に使えるかどうかを判断したい場合、forkなんかは試しに実行して > > おいてみるのは心理的抵抗が大きいと思います。 > > その結果としてRUBY_PLATFORMなどで判断しちゃうという嫌なコード > > がはびこっていますし、その辺をなんとかしたいという思いがあり > > ます。 > > respond_to?で判断するよりも、forkable?みたいなメソッドがあった方が > 見栄えが良くて私は好きです。 fork以外はこうですか? Dir.tellable? Dir.seekable? Dir.chrootable? File.lchmodable? File.lchownable? File.linkable? File.symlinkable? File.readlinkable? File.truncatable? IO.fsyncable? IO.close_on_execable? IO.ioctlable? IO.fcntlable? syscallable? IO.pipable? forkable? Process.getpgrpable? Process.setpgrpable? Process.getpgidable? Process.setpgidable? Process.setsidable? Process.getprioritiable? Process.setprioritiable? Process.getrlimitable? Process.setrlimitable? Process.setuidable? Process.setruidable? Process.seteuidable? Process.setreuidable? Process.setresuidable? Process::UID.change_privilegable? Process::Sys.setgidable? Process::Sys.setrgidable? Process::Sys.setegidable? Process::Sys.setregidable? Process::Sys.setresgidable? Process::Sys.issetugidable? Process.setgidable? Process.getgroupsable? Process.setgroupsable? Process.initgroupsable? Process.daemonable? Process::GID.change_privilegable? Process.setegidable? Process::UID.re_exchangable? Process::GID.re_exchangable? Process.timesable? もちろんこれは冗談ですけど、ありえねーと思います。 それでは。 -- U.Nakamura