From: kjana@... (YANAGAWA Kazuhisa) Date: 2000-12-24T22:21:17+09:00 Subject: [ruby-list:26806] Re: cgi.rb and Regexp::last_match In message <977594407.11894@fsinet.or.jp> wakou@fsinet.or.jp writes: > なお、"string" =~ /re/, /re/ === "string" に関しては、見た目にも真偽式 > として使いたくなる記述ですので、これらは nil を返すままでいいかとは思 > います。 > > という事で、=~ はそのままで、/re/.match() は常に MatchData という原さ > んの案に一票。 多重代入で to_ary が呼ばれるがごとく,if/unless/while の条件の文脈で呼 ばれる to_bool なんていうメソッドはどうだろうなんてちょっと思ったり. Object#to_bool => true TrueClass#to_bol => true FalseClass#to_bool => false Nilclass#to_bool => false ぐらいを基本にして,subclass で適当に override する,と. MatheData の場合には match してたら true,それ以外では false っていう ことにする.なんとなく統一的にはできますね. ただこんなことをするとあらゆる条件判定でメソッド呼び出しが一段増えるか ら,どう考えても性能面で悪影響を与えるというのが難点.暗黙のメソッド呼 び出しが増えるのもあんまり気に入らない. # 自分でもよくないと思うことをとりあえず提案してみるのはやめなさい :-P -- 柳川和久 @ 東大阪市 . 大阪府 December 24, 2000 「死体は死体らしく, おとなしく寝てろっ!」