I stumbled on this, almost by accident, and I'm curious as to whether
this is a "feature" or a "bug".
S = Struct.new( "S", :a )
s = S.new
[ 1, 2, 3, 4, 5, 6 ].each { |s.a| puts s.a }
This prints each element of the array, but what I'm curous about, is
that the block actually assigns each value to s.a.
I like this.
However, I don't want to use this if it is liable to change. Is this
simply a side-effect of the way block parameters are being handled right
now? In other words, is this something that may potentially change in
Ruby2?
--
Jamis Buck
jgb3 / email.byu.edu
ruby -h | ruby -e 'a=[];readlines.join.scan(/-(.)\[e|Kk(\S*)|le.l(..)e|#!(\S*)/) {|r| a << r.compact.first };puts "\n>#{a.join(%q/ /)}<\n\n"'