From: rubikitch@... Date: 2008-12-10T21:06:23+09:00 Subject: [ruby-dev:37347] Re: [Feature #841] Object#self From: Yukihiro Matsumoto Subject: [ruby-dev:37342] Re: [Feature #841] Object#self Date: Wed, 10 Dec 2008 15:18:29 +0900 > |自分自身を返すメソッドがあってもいいんじゃないでしょうか? > |名前はRuby的にはself、Lispに倣うならばidentityとか。 > > どういう風に使うんですか? class Object def self() self; end end # 自分自身を返すメソッドをaliasで作成する class Test alias foo self end Test.new.foo # => # # ブロック {|x| x } を &:self と記述する require 'scanf' "abcd".scanf('%c%c') # => ["a", "b"] "abcd".scanf('%c%c'){|a| a} # => [["a", "b"], ["c", "d"]] "abcd".scanf('%c%c', &:self) # => [["a", "b"], ["c", "d"]] -- rubikitch Blog: http://d.hatena.ne.jp/rubikitch/ Site: http://www.rubyist.net/~rubikitch/