Wednesday, August 20, 2008

Ruby Block local

Ruby1.9で新たなブロックローカルの構文が導入された
垂直バー内で";"の後の変数はブロックの外の変数とダブってもローカルになる
でカンマも数が合えば許されているみたいだな
それとも隠しコマンド?

#!/usr/local/bin/ruby
# encoding: utf-8
s = 'yes'
total = 0
{a: 2, b: 3}.each do |v,k,s|
  s = k**2
  total += s
end
puts total
puts s

No comments: