APIdock / Ruby
/
method

select!

ruby latest stable - Class: Array
select!()
public

Invokes the given block passing in successive elements from self, deleting elements for which the block returns a false value.

The array may not be changed instantly every time the block is called.

If changes were made, it will return self, otherwise it returns nil.

See also Array#keep_if

If no block is given, an Enumerator is returned instead.

static VALUE
rb_ary_select_bang(VALUE ary)
{
 struct select_bang_arg args;
 RETURN_SIZED_ENUMERATOR(ary, 0, 0, ary_enum_length);
 rb_ary_modify(ary);
 args.ary = ary;
 args.len[0] = args.len[1] = 0;
 return rb_ensure(select_bang_i, (VALUE)&args, select_bang_ensure, (VALUE)&args);
}

AltStyle によって変換されたページ (->オリジナル) /