From: Akinori MUSHA Date: 2010-08-18T16:01:35+09:00 Subject: [ruby-dev:42065] Re: Procのブロック呼び出しメソッド名を自由に設定 --pgp-sign-Multipart_Wed_Aug_18_16:01:34_2010-1 Content-Type: text/plain; charset=ISO-2022-JP At Wed, 18 Aug 2010 03:01:38 +0900, SASADA Koichi wrote: > case obj > when :===.responder{|e| e < 10} > when 10..20 > when :===.responder{|e| 20 < e} > end 今は Proc#=== があるので case obj when ->(e){e < 10} when 10..20 when ->(e){20 < e} end と書けます。 > # 今更だけど,each の話は generator 使えばいいだけのような気がする. Enumerator::Generator は非公開APIなので、 Enumerator.new {} を 使ってください。(置き換えるだけです) p Enumerator.new{|g| d = Date.new 5.times{ g.yield d d += 1 } }.map{|d| "Date: #{d}" } -- Akinori MUSHA / http://akinori.org/ --pgp-sign-Multipart_Wed_Aug_18_16:01:34_2010-1 Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (FreeBSD) iEYEABECAAYFAkxrhU4ACgkQkgvvx5/Z4e7ArQCfQHLSkDX0APAc1+XwzslES4Ia F08An0Olcb7vQ3Qr8bfsYw4hxqQKrCwu =rKRN -----END PGP SIGNATURE----- --pgp-sign-Multipart_Wed_Aug_18_16:01:34_2010-1--