open(*args)
public
With no block, open is a synonym for
Dir::new. If a block is present, it is passed aDir as a parameter. The directory is closed at
the end of the block, and Dir::open returns the value of the block.
Show source
static VALUE
dir_s_open(int argc, VALUE *argv, VALUE klass)
{
struct dir_data *dp;
VALUE dir = TypedData_Make_Struct(klass, struct dir_data, &dir_data_type, dp);
dir_initialize(argc, argv, dir);
if (rb_block_given_p()) {
return rb_ensure(rb_yield, dir, dir_close, dir);
}
return dir;
}