I am not getting any output:
can any one point me by saying where did I wrong?
ar = [1,2,3,1,5,3,“a”,“b”,“c”]
e = ar.each_slice(3)
e.size.times{|i| i = e.next; p i if (e.peek rescue StopIteration) == nil
}
I want the output: [“a”,“b”,“c”] but getting nothing.
Here I have done:
ar = [1,2,3,1,5,3,“a”,“b”,“c”]
e = ar.each_slice(3)
e.size.times{|i| i = e.next;p i if !(e.peek rescue nil) }
#=> [“a”, “b”, “c”]
On Sunday, May 12, 2013 7:30:01 PM UTC+1, Ruby-Forum.com User wrote:
I want the output: [“a”,“b”,“c”] but getting nothing.
with the statement modifier form of rescue you can’t specify a type of
exception to rescue, so when e.peek raises
(e.peek rescue StopIteration)
evaluates to StopIteration, which isn’t nil
Fred