public Method

Array.reverse_each

array.reverse_each {|item| block }

Same as Array#each, but traverses self in reverse order.

a = [ "a", "b", "c" ]
a.reverse_each {|x| print x, " " }

produces:

c b a

Source Code

/*
*  call-seq:
*     array.reverse_each {|item| block } 
*  
*  Same as <code>Array#each</code>, but traverses <i>self</i> in reverse
*  order.
*     
*     a = [ "a", "b", "c" ]
*     a.reverse_each {|x| print x, " " }
*     
*  produces:
*     
*     c b a
*/

static VALUE
rb_ary_reverse_each(ary)
   VALUE ary;
{
   long len = RARRAY(ary)->len;

   while (len--) {
       rb_yield(RARRAY(ary)->ptr[len]);
       if (RARRAY(ary)->len < len) {
           len = RARRAY(ary)->len;
       }
   }
   return ary;
}
Comments

Have your say
Please use Textile formatting (click here for a cheat sheet). Use <code/> and <pre/> for code samples.
Click here to login with OpenID to to post comments.